gpt4 book ai didi

android - 选择项目时如何防止对话框关闭

转载 作者:太空宇宙 更新时间:2023-11-03 10:46:07 26 4
gpt4 key购买 nike

我有一个与项目的对话:

final String[] items = new String[] { "item1", "item2" };

AlertDialog.Builder adb = new AlertDialog.Builder(this).setTitle("Title");
adb.setCancelable(false);
adb.setItems(items, new OnClickListener() {

@Override
public void onClick(DialogInterface d, int n) {
Toast.makeText(MainActivity.this, items[n], Toast.LENGTH_LONG).show();
});
}

AlertDialog alert = adb.create();
alert.setCancelable(false);
alert.show();

选择一个项目时,将显示 Toast 并关闭对话框。我怎样才能禁用它?我希望在选择项目后对话框仍然保持打开状态。

最佳答案

将 setItems 方法中的第二个参数设置为 null,并将项目监听器附加到作为对话框一部分的 ListView :

var alertDialog: AlertDialog? = null
val builder = AlertDialog.Builder(context!!, R.style.alertDialogTheme)
.setItems(items.toTypedArray(), null)
.setTitle("My Dialog Title")
.setPositiveButton(
"OK"
) { dialog, id ->
dialog.dismiss()
}.setNegativeButton(
"Cancel"
) { dialog, id ->
dialog.dismiss()
}

alertDialog = builder.show()
alertDialog.listView.setOnItemClickListener(object: AdapterView.OnItemClickListener {
override fun onItemClick(p0: AdapterView<*>?, p1: View?, p2: Int, p3: Long) {
// Do something with item click.
}
})
alertDialog.setCancelable(false)

关于android - 选择项目时如何防止对话框关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23397156/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com