android – AlertDialog – 不要关闭项目点击

android – AlertDialog – 不要关闭项目点击,第1张

概述好,所以我正在创建一个ArrayAdapter并在我的Alert Dialog中使用它,因为我不想在SingleItemSelection对话框上显示默认的单选按钮. 相反,我想更改所选项目的背景,然后当用户按下正按钮时,我将执行与已选择的项目相关的 *** 作. private void showAlertDialog() { final String[] options = g 好,所以我正在创建一个ArrayAdapter并在我的Alert Dialog中使用它,因为我不想在SingleItemSelection对话框上显示默认的单选按钮.

相反,我想更改所选项目的背景,然后当用户按下正按钮时,我将执行与已选择的项目相关的 *** 作.

private voID showAlertDialog()    {        final String[] options = getResources().getStringArray(R.array.dialog_options);        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,androID.R.layout.simple_List_item_1,options);        AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this);        dialogBuilder.setTitle("My Dialog");        dialogBuilder.setAdapter(adapter,new OnClickListener()        {            @OverrIDe            public voID onClick(DialogInterface dialog,int which)            {                Toast.makeText(getApplicationContext(),"item clicked at index " + which,Toast.LENGTH_LONG).show();// Here I need to change the background color of the item selected and prevent the dialog from being dismissed            }        });        //String strOkay = getString(R.string.okay);        dialogBuilder.setPositivebutton("OK",null); // Todo        dialogBuilder.setNegativebutton("Cancel",null); // nothing simply dismiss        AlertDialog dialog = dialogBuilder.create();        dialog.show();    }

我正在努力解决两个问题.

How do I prevent the dialog from being dismissed when the user clicks on an item

How do I change the background of the item that has been selected when the user clicks on it

解决方法 >您可以将自定义ListVIEw设置为AlertDialog的内容并设置OnItemClickListener
AlertDialog.Builder builder = new AlertDialog.Builder(this);String[] items = ...;ListVIEw List = new ListVIEw(this);List.setAdapter(new ArrayAdapter<String>(this,androID.R.layout.select_dialog_item,items));List.setonItemClickListener(new AdapterVIEw.OnItemClickListener() {        public voID onItemClick(AdapterVIEw<?> arg0,VIEw vIEw,int pos,long ID) {            ...        }    });builder.setVIEw(List);

然后保存对话框的引用

mDialog = builder.show();

以便在必要时解散

mDialog.dismiss();
总结

以上是内存溢出为你收集整理的android – AlertDialog – 不要关闭项目点击全部内容,希望文章能够帮你解决android – AlertDialog – 不要关闭项目点击所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1131233.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存