以编程方式取消选中Android上对话框中的项目

时间:2011-04-12 08:21:53

标签: android dialog

我在对话框中显示带有复选框的列表。该列表看起来像 -

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()& amp;来使列表视图无效。 InvalidateViews(),但没有成功。

任何帮助都将非常感激。

谢谢,

阿克沙伊

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

如果我理解正确,则复选框位于列表中。对于相反的情况存在一个问题:试图取消选中所有方框。解决方案似乎是打电话

adapter.notifyDataSetChanged()

以下是该问题的链接:Uncheck all checkboxes in a custom ListView

编辑:好的,我会再试一次:-)发现另一个问题:android: Refresh ListView using ListAdapter and SimpleCursorAdapter希望这有帮助! : - )