//单纯的对话窗口
b1.setOnClickListener(newView.OnClickListener()
{
@Override
public voidonClick(View v) {
AlertDialog.Builder builder=newAlertDialog.Builder(AlertActivity.this);
builder.setTitle("提示");
builder.setIcon(R.mipmap.ic_launcher);
builder.setMessage("确定。。。。吗");
//setPositiveButton 确定按钮
builder.setPositiveButton("确定",new
DialogInterface.OnClickListener() {
@Override
public voidonClick(DialogInterface dialog,int
which) {
Toast.makeText(getBaseContext(),"点击了确定",
Toast.LENGTH_SHORT).show();
}
});
//setNegativeButton 取消按钮
builder.setNegativeButton("取消",new
DialogInterface.OnClickListener() {
@Override
public voidonClick(DialogInterface dialog,int
which) {
Toast.makeText(getBaseContext(),"点击了取消",
Toast.LENGTH_SHORT).show();
}
});
//设置空白处是否执行按钮,没有的话,空白处单击消失,或许我会参数为true
builder.setCancelable(true);
AlertDialog alertDialog=builder.create();
alertDialog.show();
}
});
单选窗口
b2.setOnClickListener(newView.OnClickListener()
{
@Override
public voidonClick(View v) {
AlertDialog.Builder builder=newAlertDialog.Builder(AlertActivity.this);
builder.setTitle("请选择");
builder.setIcon(R.mipmap.ic_launcher);
//空白处单击的显示
builder.setCancelable(true);
//单选项设置
finalString[] items={"上海","北京","烟台"};
builder.setSingleChoiceItems(items,1,new
DialogInterface.OnClickListener() {
@Override
public voidonClick(DialogInterface dialog,int
i) {
Toast.makeText(getBaseContext(),
items[i].toString(), Toast.LENGTH_SHORT).show();
//界面是否一直保留
//dialog.dismiss();
}
});
AlertDialog alertDialog=builder.create();
alertDialog.show();
}
});
多选窗口
b3.setOnClickListener(newView.OnClickListener()
{
@Override
public voidonClick(View v) {
AlertDialog.Builder builder=newAlertDialog.Builder(AlertActivity.this);
builder.setTitle("请选择");
builder.setIcon(R.mipmap.ic_launcher);
//设置是否空白处单击显示
//builder.setCancelable(false);
//多选框设置
finalString [] items={"北京","上海","烟台"};
boolean[] choice={true,true,false};
final boolean[] itemchoice=new
boolean[items.length] ;
itemchoice[0]=true;
itemchoice[1]=true;
builder.setMultiChoiceItems(items, choice,
newDialogInterface.OnMultiChoiceClickListener()
{
@Override
public voidonClick(DialogInterface dialog,int
i,
booleanb) {
if(b) {
Toast.makeText(getBaseContext(),
items[i].toString(), Toast.LENGTH_SHORT).show();
itemchoice[i]=true;
}else{
itemchoice[i]=false;
}
}
});
builder.setPositiveButton("确定",new
DialogInterface.OnClickListener() {
@Override
public voidonClick(DialogInterface dialog,int
i) {
String str ="";
for(intch
= 0; ch <items.length;
ch++) {
str += (itemchoice[ch] ==true)
?items[ch] :"";
}
Toast.makeText(getBaseContext(), str, Toast.LENGTH_SHORT).show();
}
});
AlertDialog alertDialog=builder.create();
alertDialog.show();
}
});
自定义窗口
b4.setOnClickListener(newView.OnClickListener()
{
@Override
public voidonClick(View view) {
View v=getLayoutInflater().inflate(R.layout.toast_layout,null);
AlertDialog.Builder builder=newAlertDialog.Builder(AlertActivity.this);
builder.setView(v);
AlertDialog alertDialog=builder.create();
alertDialog.show();
}
});
基本构成
setTitle :为对话框设置标题
setIcon :为对话框设置图标
setMessage:为对话框设置内容
setView : 给对话框设置自定义样式
setItems :设置对话框要显示的一个list,一般用于显示几个命令时
setMultiChoiceItems :用来设置对话框显示一系列的复选框
setNeutralButton :普通按钮
setNegativeButton :对话框添加"No"按钮
create : 创建对话框
show :显示对话框
builder.setCancelable(true); //设置空白处是否执行按钮,没有的话,空白处单击消失,或许我会参数为true
(1)单纯的对话窗口包含以上所有组件,builder.setPositiveButton("确定",new DialogInterface.OnClickListener()确认按钮
builder.setNegativeButton("取消",new
DialogInterface.OnClickListener() 取消按钮
(2)单选窗口
builder.setSingleChoiceItems(items, 1,new
DialogInterface.OnClickListener(),参数为1
先定义 选项内容
(3)多选窗口 builder.setMultiChoiceItems(items, choice,newDialogInterface.OnMultiChoiceClickListener() ,参数为choice,自己的选择
先定义选项内容,在定义选项规则数组,false未选中,true选中
(4)自定义窗口 View v=getLayoutInflater().inflate(R.layout.toast_layout,null);得到视图文件
本文详细介绍了Android中对话框的各种类型及使用方法,包括简单的对话窗口、单选窗口、多选窗口和自定义窗口等。通过具体示例展示了如何设置对话框的标题、图标、消息内容等,并介绍了不同类型的交互方式。
437

被折叠的 条评论
为什么被折叠?



