AlertDialog
我们在使用Android的APP时经常会点击某个按钮弹出来选择的对话框提供选项,选择的对话框也可以分为多样,如确定取消类型,单选类型,复选类型,列表类型等.在Android中实现这个我们都可以用到AlterDialog进行实现.
先上一段视频看看Demo实现的效果:
DEMO编码
首先我们新建一个工程,名字可以自己起
布局文件Layout
然后在layout的布局文件里面加入4个Button按钮
效果如下:
代码文件
我们在代码文件里定义两个数组
用于处理多选的对话框选择结果
AlertDialog的创建基本方法:
通过构造器(AlertDialog.Builder
)来构造标题、图标和按钮等内容的。
AlertDialog.Builder
的对象;AlertDialog.Builder
自己也有一个show方法,可以显示对话框,所以上面的第4、第5步可以简化为一步。
基本实现代码:
//带列表的对话框 Button btn2 = (Button) findViewById(R.id.button2); btn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { final String[] items = new String[]{"跑步", "游泳", "羽毛球", "乒乓球", "网球"};
//创建构造器
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
//设置AlertDialog的显示图标
builder.setIcon(R.mipmap.ic_launcher);
//设置AlertDialog的显示标题
builder.setTitle("请选择你喜欢的运动项目:"); //在AlertDialog里面添加列表项,第二个参数就是直接写了点击事件 builder.setItems(items, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { Toast.makeText(MainActivity.this, "你选择了" + items[i], Toast.LENGTH_SHORT).show(); } });
//把我们整个AlertDialog的构造器创建并显示出来
builder.create().show(); } });
对话框AlertDialog
要加上setMessage为显示的内容,然下setbutton是设置增加的按钮及写入对应的事件
设置单选的列表AlertDialog
需要用到setSingleChoiceItems
设置多选的列表AlertDialog
需要用到setMultiChoiceItems
我们在前面定义的checkitems的数组用于记录选择时候是否为选中状态
然后在确定按钮的时候遍历选中状态来找到对应的我们选择的项目.
这样就完成了,非常简单!!