【发布时间】:2011-04-12 08:21:53
【问题描述】:
我在对话框中显示一个带有复选框的列表。该列表看起来像-
Item 1
Item 2
All
每个项目旁边都有一个复选框。现在的要求是—— 如果第 1 项或第 2 项或两者都已选中,并且选择了全部,则应取消选中第 1 项和第 2 项。
为此,我实现了 DialogInterface.OnMultiChoiceClickListener 的 onClick 监听器。
public void onClick(DialogInterface dialog, int which, boolean isChecked)
{
if(which == 2 && isChecked)
{
((AlertDialog)dialog).getListView().setItemChecked(0, false);
((AlertDialog)dialog).getListView().setItemChecked(1, false);
}
}
但这不起作用。我什至尝试通过调用 Invalidate() 和 InvalidateViews() 来使列表视图无效,但没有成功。
任何帮助将不胜感激。
谢谢,
阿克谢
【问题讨论】:
-
您确定 if 语句中的代码已运行吗?如果没有,您可以通过
Log或调试来查找。 -
谢谢!是的,我确信代码会执行。