
相反,我想更改所选项目的背景,然后当用户按下正按钮时,我将执行与已选择的项目相关的 *** 作.
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(); } 我正在努力解决两个问题.
解决方法 >您可以将自定义ListVIEw设置为AlertDialog的内容并设置OnItemClickListenerHow 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
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 – 不要关闭项目点击所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)