alertdialog对话框单项选择框怎么实现选项选中之后再次打开还是选中那个选项?
时间: 2024-02-03 14:03:25 浏览: 130
要在AlertDialog中实现单项选择框选项选中之后再次打开仍然选中该选项,可以使用setCheckedItem()方法。该方法可以设置单项选择框中默认选中的选项。以下是一个示例代码:
```
String[] items = {"选项1", "选项2", "选项3"};
int checkedItem = 1; // 默认选中第二个选项
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("请选择一个选项");
builder.setSingleChoiceItems(items, checkedItem, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
checkedItem = which; // 记录用户选择的选项
}
});
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// 处理确定按钮的点击事件
// checkedItem变量保存了用户选择的选项
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// 处理取消按钮的点击事件
}
});
AlertDialog dialog = builder.create();
dialog.show();
// 在dialog.show()之后调用setCheckedItem()方法,以设置默认选中的选项
((AlertDialog)dialog).getListView().setItemChecked(checkedItem, true);
```
在上面的代码中,setCheckedItem()方法在dialog.show()之后调用,以确保在ListView中正确地选中默认选项。注意,这里需要使用AlertDialog的getListView()方法获取ListView,然后再调用setItemChecked()方法设置默认选中的选项。
阅读全文