Android Checkbox,来自ENUM的BYTE值到Int

时间:2016-05-07 12:25:39

标签: java android android-studio checkbox enums

我试图从我用4个选项制作的复选框对话框中获取特定值。所以这四个值代表位,如果最后一个选项被选中而其余选项未选中则会产生0001,如果选择了第一个和最后一个,它将给出1001。

我实际上无法获得int值来表示BYTE值,这是我到目前为止所拥有的

public enum Material
{
    FOLDABLE (1),
    OVERMAXKG (2),
    STORABLE (4),
    AVAILABLE (8);

    private byte val;


Material(int v)
{
    this.val = (byte) v;
}

public byte getValue()
{
    return val;
}

用于更改属性的材质对象类方法:

private byte materialProp;
public void adjustProperties(Matieral mat)
{
    materialProp = (byte) (materialProp ^ mat.getValue());
}

这是警告对话框

AlertDialog matDialog;
    final CharSequence[] properties = {
             " Foldable ", " Exceeds 20KG ", " Storable ", " In Stock "};
    final ArrayList propList = new ArrayList();

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Select Material Properties");

我如何将这些值表示为BYTE格式,我可以得到的int值为?所以如果我选中复选框"超过20KG"然后点击OK按钮它将代表1001,然后它会给我BYTE值" 0100"

0 个答案:

没有答案