【发布时间】:2013-10-11 02:04:14
【问题描述】:
我需要创建一个包含多项选择项的 AlertDialog,但尝试将自定义布局文件设置为内部 ListView 时遇到了一些问题。
对于单选项目,我使用一个以 ListAdapter 作为参数的构造函数,这样我可以为每一行设置适当的布局资源:
builder.setSingleChoiceItems(new ArrayAdapter<String>(getActivity(),
R.layout.list_item_single_choice_answer, items), checkedItem,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
checkedItem = which;
toggleEditTextAnswer(checkedItem == (items.length - 1));
dialog.dismiss();
}
});
问题是 setMultiChoiceItems 在创建多选列表时没有接受 ListAdapter 作为参数的构造函数。
我需要为每一行设置自定义布局,因为我使用可绘制选择器来设置行背景和文本颜色。
有什么想法吗?
附言。这是 AlertDialog 源代码以获取更多信息。 https://android.googlesource.com/platform/frameworks/base.git/+/android-4.2.2_r1/core/java/android/app/AlertDialog.java
【问题讨论】:
标签: android adapter android-alertdialog multiple-choice