继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Dialog整理android必须掌握(一)

萧一郎
关注TA
已关注
手记 11
粉丝 15
获赞 320

首先我们要明白什么Dialog什么?当我们点击某一个按钮时,界面上会弹出一个对话框,那个这个对话框就是Dialog,比如我们会弹出取消、确定等等(当然这里还有一个自定义的Dialog,自定义的Dialog一般是放在一个xml文件里面布局,然后再该类继承Dialog)
好,现在我们就简单的Dialog一步步走向自定义的Dialog吧,
我们先看看几种常见的Dialog

                1):确定对话框
                2):单选对话框
                3):多选对话框
                4):列表对话框

图片描述
图上可以就看到他们都要一个标题和图片(图片设置可以让他显示,也可以不显示)
在这里我要了解Dialog一些方法
setTitle:为对话框设置标题
setIcon:为对话框设置图标
setMessage:为对话框设置内容
setView:为对话框设置样式
setItems:设置对话框要显示一list,一般用于显示几个命令时
setMultiChoiceItems:用来设置对话框显示一系列的复选框
setSingleChoiceItems:设置单选按钮
setNeutralButton:普通按钮
setPositveButton:给对话框添加“确定”按钮
setNegetiveButton:给对话框添加“取消”按钮
好,现在我们一个个来看看这个方法。

首先我们来看第一种对话框
public viud shouDialog(){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle(“确定对话框”);
builder.setIcon(“图片的R..。。。”);
builder.setPositveButton(“确定”,new DialogInterface.OnClickListener(){
//这里必须要用DialogInterface因为点击事件有好几种,这里是Dialog的点击//事件
public void onClick(DialogInterface dialog,int which){
//这个方法便是点击确定的执行的事件
}
});
AlertDialog dialog=builder.create();//获取一个Dialog
dialog.show()//显示一个Dialog
}
接下我们来看单选对话框
public void showDialog2(){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builider.setTitle(“选择性别”);
builder.setIcon(“设置图标的R地址”);
builder.setSingChoiceItems(String类型的数组,主要显示的内容,这参数表示默认选中的是多少,new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,int which){
//int which表示我们选中数组的那个参数。
String str=数组[which];
Toast.makeText(this,”选中的”+str,Toast.LENGTH_SHORT).show();
}
});
AlertDialog dialog =builder.create();
dialog.show();
}
接下来我们来看多选按钮对话框
public void showDialog3(){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle(“爱好”);
builder.setIcon(“图片的地址”);
builder.setMultiChoiceItems(“数组传来的参数”,null(ps:这个参数表示选中的参数,因为有多个我们改成null),new DialogInterface.OnMultiChoceItems(){
public void onClick( DialogInterface dialog ,int which ,boolean isChecked){//也是三个参数
if(isChecked){
Toast.makeText(this,”选中的”+数组[which],Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this,”没有选中”+数组[which],Toast.LENGTH_SHORT).show();

                }} 
        });
//我们在Dialog的下面设置一个取消
    builder.setNegativeButton(“取消”,new DialogInterface.OnClick(){
        dialog.dimiss();
    });
    AlertDialog dialog=builder.create();
    dialog.show();

}

打开App,阅读手记
6人推荐
发表评论
随时随地看视频慕课网APP