1 AlertDialog.Builder builder=new AlertDialog.Builder(this);2 builder.setTitle("历史记录").setIcon(R.mipmap.info).setMessage(str)3 .setPositivebutton("ok",new DialogInterface.OnClickListener() {4 @OverrIDe5 public voID onClick(DialogInterface dialog,1)">int which) {6 }7 });8 AlertDialog ad=builder.create();9 ad.show();
上面这段代码显示的结果如图所示。
简单记录一下AlertDialog的用法:
下面的内容整理自:https://blog.csdn.net/streate/article/details/90899515
1.普通提示对话框
其上主要是提示标题,消息主体,底部“取消”、“确定”等按钮。
1 /** 2 * 提示对话框 3 */ 4 voID tipDialog() { 5 AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity. 6 builder.setTitle("提示:" 7 builder.setMessage("这是一个普通对话框," 8 builder.setIcon(R.mipmap.ic_launcher); 9 builder.setCancelable(true); //点击对话框以外的区域是否让对话框消失10 11 设置正面按钮12 builder.setPositivebutton("确定",1)">13 @OverrIDe14 15 Toast.makeText(MainActivity.this,"你点击了确定",Toast.LENGTH_SHORT).show();16 dialog.dismiss();17 }18 });19 设置反面按钮20 builder.setNegativebutton("取消",1)">21 22 23 Toast.makeText(MainActivity.24 25 26 27 设置中立按钮28 builder.setNeutralbutton("保密",1)">29 30 31 Toast.makeText(MainActivity.32 33 34 35 36 37 AlertDialog dialog = builder.create(); 创建AlertDialog对象38 对话框显示的监听事件39 dialog.setonShowListener( DialogInterface.OnShowListener() {40 41 onShow(DialogInterface dialog) {42 Log.e(TAG,"对话框显示了"43 44 45 对话框消失的监听事件46 dialog.setonCancelListener( DialogInterface.OnCancelListener() {47 48 onCancel(DialogInterface dialog) {49 Log.e(TAG,"对话框消失了"50 51 52 dialog.show(); 显示对话框53 }使用到的方法
- setTitle:设置对话框的标题,比如“提示”、“警告”等;
- setMessage:设置对话框要传达的具体信息;
- setIcon: 设置对话框的图标;
- setCancelable: 点击对话框以外的区域是否让对话框消失,默认为true;
- setPositivebutton:设置正面按钮,表示“积极”、“确认”的意思,第一个参数为按钮上显示的文字,下同;
- setNegativebutton:设置反面按钮,表示“消极”、“否认”、“取消”的意思;
- setNeutralbutton:设置中立按钮;
- setonShowListener:对话框显示时触发的事件;
- setonCancelListener:对话框消失时触发的事件。
列表对话框的内容就是一列显示内容,
需要用到构造器的
setItems方法,
参数一是列表数据,参数二是点击监听接口,
我们要实现这样一个小功能,用户在点击某一项时d出一个Toast提示选中项的内容。
* 列表对话框private itemListDialog() { 6 builder.setTitle("选择你喜欢的课程:" 7 builder.setCancelable(true 8 final String[] lesson = new String[]{"语文","数学","英语","化学","生物","物理","体育"}; 9 10 builder.setIcon(R.mipmap.tab_better_pressed)11 .setItems(lesson,1)">12 @OverrIDe13 14 Toast.makeText(getApplicationContext(),"你选择了" + lesson[which],1)">15 } }).create();17 18 builder.setPositivebutton("确定",1)">19 20 22 23 24 25 builder.setNegativebutton("取消",1)">27 28 30 31 AlertDialog dialog = builder.create(); 创建AlertDialog对象32 dialog.show(); 33 }
3.单选对话框
单选对话框的内容就是一个单项选择列表,
需要用到setSingleChoiceItems
方法,参数一是列表数据,
参数二是默认选中的item,参数三则是点击监听接口,
我们要实现这样一个小功能,用户在选好某一项之后记下其选择,
下次点开对话框时就默认选中该项。
* 单选对话框 singleChoiceDialog() { 6 7 builder.setTitle("你现在居住地是:"final String[] citIEs = {"北京","上海","广州","深圳","杭州","天津","成都" 9 10 builder.setSingleChoiceItems(citIEs,chedkedItem,1)">11 12 int which) {13 Toast.makeText(getApplicationContext(),1)"> citIEs[which],1)">14 chedkedItem = which;17 builder.setPositivebutton("确认",1)">19 20 23 24 builder.setNegativebutton("取消",1)">26 27 30 31 AlertDialog dialog = builder.create(); 32 dialog.show(); 33 }
4.复选对话框
复选对话框是一个可以重复选中的列表,与单选对话框有点像,
不过调用的是setMultiChoiceItems方法,而且多了一个布尔值参数isChecked,
表示当前点击的item是否被选中。
我们创建一个集合,将点击选中的item添加到集合中,
取消勾选的话就从集合中移除,点击确认按钮后就将选中内容显示出来。
* 复选对话框 multiChoiceDialog() { 6 builder.setTitle("请选择你喜欢的颜色:" 7 final String[] colors = {"红色","橙色","黄色","绿色","蓝色","靛色","紫色" 8 final List<String> mycolors = new ArrayList<>();10 builder.setMultiChoiceItems(colors,1)">null,1)"> DialogInterface.OnMultiChoiceClickListener() {int which,1)">boolean isChecked) {13 if (isChecked) {14 mycolors.add(colors[which]);15 } else { mycolors.remove(colors[which]); }20 21 builder.setPositivebutton("确认",1)">23 24 String result = "";25 for (String color : mycolors) {26 result += color + "、"28 Toast.makeText(getApplicationContext(),"你选择了: " + result,1)">31 32 33 builder.setNegativebutton("取消",1)">35 36 mycolors.clear();37 38 39 40 AlertDialog dialog = builder.create(); 41 dialog.show(); 42 }
总结
以上是内存溢出为你收集整理的安卓AlertDialog对话面板的使用---Android开发全部内容,希望文章能够帮你解决安卓AlertDialog对话面板的使用---Android开发所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)