假如:多选项有3个,id分别为1,2,3。
OnMultiChoiceClickListener listener = new DialogInterface.OnMultiChoiceClickListenerAlertDialog.Builder builder = new Builder(this);
builder.setMultiChoiceItems(mItems, mMutiChoiceStatus, listener);在listener里的onClick(DialogInterface arg0, int arg1, boolean arg2)函数中控制这3个选项的亮起和灭掉。
如果点击id为1的选项,如果此时id为3的选项为灭的,则控制他为亮起,这是可以成功的。
mMutiChoiceStatus[2] = true;
但如果此时id为3的选项为亮的,则控制他为灭的,mMutiChoiceStatus[2] = false,则失败。
基本上做的测试,如果要控制原有是亮的变成灭的,是没有办法控制的,谁知道怎么处理。

解决方案 »

  1.   

    就是比如对话框里面有3个多选项列表,“地球”、“月亮”、“太阳”。现在“地球”选项是亮的,“月亮”、“太阳”选项是灭的。然后我在UI上面操作,点击“地球”选项,在代码里控制“太阳”变成亮的。在listener里的onClick函数里mMutiChoiceStatus[2] = true;控制成功。接下来,我再次点击“地球”,这次希望“太阳”选项是灭的,在onClick函数里mMutiChoiceStatus[2] = false;没有成功。在onClick函数里如果设置某个选项是亮的,都可以成功,但是如果设置某个选项为false,则都失败。这怎么处理