我正在使用带有多选复选框的 DialogFragment 以允许用户选择多个选项。我有一个 Hashmap,根据单击时是否选择了某个项目来添加或删除选择项 - 见下文。这工作正常。
当用户重新打开片段时,对话框的状态被保留,并且之前检查的项目按预期显示 - 到目前为止很好。但是我想知道如何读取这些状态并将它们添加到我的 HashMap 中,以便它们与 Listener 类拾取的任何内容一起返回。我敢肯定这很简单,但我找不到一个例子。
我查看了 API 参考,但找不到提供此功能的明显方法。
提前致谢。
public class DialogSelectionClickHandler implements
DialogInterface.OnMultiChoiceClickListener {
public void onClick(DialogInterface dialog, int clicked,
boolean selected) {
if (selected) {
// write to a hashmap
groupSelectHash.put(groups[clicked].toString(), "");
}
else
{
// remove from hashmap
groupSelectHash.remove(groups[clicked].toString());
}
Log.i( "DialogTest", "groupSelectHash" + groupSelectHash.toString());
}
}