Dialog(二)——单选对话框和多选对话框
发布日期:2021-06-30 11:15:21
浏览次数:2
分类:技术文章
本文共 3590 字,大约阅读时间需要 11 分钟。
MainActivity如下:
import android.os.Bundle;import android.app.Activity;import android.app.Dialog;import android.app.AlertDialog.Builder;import android.content.DialogInterface;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class MainActivity extends Activity { private Button mSingleChoiceButton; private Button mMultiChoiceButton; private Dialog mSingleDialog; private Dialog mMultiDialog; boolean singleFlags[]=null; boolean multiFlags[]=null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); init(); } private void init(){ mSingleChoiceButton=(Button) findViewById(R.id.singleChoiceButton); mSingleChoiceButton.setOnClickListener(new ButtonOnClickListenerImpl()); mMultiChoiceButton=(Button) findViewById(R.id.multiChoiceButton); mMultiChoiceButton.setOnClickListener(new ButtonOnClickListenerImpl()); } private class ButtonOnClickListenerImpl implements OnClickListener { @Override public void onClick(View view) { switch (view.getId()) { case R.id.singleChoiceButton: singleFlags=new boolean[]{true,false,false}; Builder singleBuilder=new Builder(MainActivity.this); singleBuilder.setIcon(R.drawable.ic_launcher); singleBuilder.setTitle(getResources().getString(R.string.dialog_title)); singleBuilder.setSingleChoiceItems(R.array.singleChoiceArray, 0, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { for (int i = 0; i < singleFlags.length; i++) { if (i==which) { singleFlags[i]=true; }else{ singleFlags[i]=false; } } } }); singleBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { String result=""; for (int i = 0; i < singleFlags.length; i++) { if (singleFlags[i]==true) { result=getResources().getStringArray(R.array.singleChoiceArray)[i]; } } Toast.makeText(MainActivity.this, result, Toast.LENGTH_SHORT).show(); } }); mSingleDialog=singleBuilder.create(); mSingleDialog.show(); break; case R.id.multiChoiceButton: multiFlags=new boolean[]{true,false,false}; Builder multiBuilder=new Builder(MainActivity.this); multiBuilder.setIcon(R.drawable.ic_launcher); multiBuilder.setTitle(getResources().getString(R.string.dialog_title)); multiBuilder.setMultiChoiceItems(R.array.multiChoiceArray, multiFlags, new DialogInterface.OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface arg0, int which, boolean isChecked) { multiFlags[which]=isChecked; } }); multiBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int arg1) { String result=""; for (int i = 0; i < multiFlags.length; i++) { if (multiFlags[i]) { result=result+getResources().getStringArray(R.array.multiChoiceArray)[i]+" "; } } Toast.makeText(MainActivity.this,result, Toast.LENGTH_SHORT).show(); } }); mMultiDialog=multiBuilder.create(); mMultiDialog.show(); break; default: break; } } }}main.xml如下:
转载地址:https://it9527.blog.csdn.net/article/details/28893359 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年04月28日 09时47分26秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
听李天飞《大话西游》有感
2019-04-30
走进开源代码(三)
2019-04-30
Linux下开发Qt界面程序时命令行传参数的一个坑
2019-04-30
SourceInsight使用技巧(转)
2019-04-30
QT之旅——post 文件
2019-04-30
树莓派为连接不同Wifi分配固定IP的方法
2019-04-30
[转]Linux 下编译、安装、配置 QT
2019-04-30
新手教学看eMule 0.50a Xtreme 8.0设置
2019-04-30
如何在Linux使用Eclipse + CDT开发C/C++程序?
2019-04-30
Eclipse官网下载页面的Packages 和Developer Builds区别
2019-04-30
在CentOS 6.4安装Qt5.0.1
2019-04-30
深入浅出TCP之send和recv
2019-04-30
yum和apt-get的区别
2019-04-30
vim中文帮助的安装
2019-04-30
linux下获取所有文件夹和文件,支持nfs和xfs
2019-04-30
用分区魔术师把linux所占的分区删除后重写mbr
2019-04-30
软件架构师书籍
2019-04-30
Java程序员到架构师的推荐阅读书籍
2019-04-30
LFS、BLFS、ALFS、HLFS的区别
2019-04-30
国外知名网站评出对程序员最具影响力的图书(附下载)
2019-04-30