您的位置:首页 > 其它

AlertDialog

2015-08-27 20:15 465 查看

AlertDialog简介

AlertDialog可以在当前的界面弹出一个对话框,这个对话框是置顶于所有的界面纸上的,能够屏蔽掉其他空间的交互能力,因此一般AlertDialog都是用于提示一些非常重要的内容或者警告信息。比如为了防止用户误删重要的内容,在删除前弹出一个确认对话框。

1.最简单的dialog

AlertDialog.Builderbuilder=new AlertDialog.Builder(MainActivity.this);
builder.setIcon(放图标).settitle(设置标题).setMessage(设置提示内容).setNegativebutton(设置点击事件).setNeutralButton(设置点击事件).setPositiveButton(设置点击事件);
AlertDialog alertDialog=builder.creat();
alertDialog.show();


//最简单的dialog
private void showdialog1() {
AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
builder.setIcon(R.mipmap.ic_launcher).setTitle("我是一个Dialog").setMessage("我是Dialog的内容").setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplication(), "点击的是NegativeButton", Toast.LENGTH_SHORT).show();
}
}
).setNeutralButton("NeutralButton", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplication(),"点击的是NeutralButton",Toast.LENGTH_SHORT).show();
}
}).setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplication(),"点击的是PositiveButton",Toast.LENGTH_SHORT).show();
}
});
AlertDialog alertDialog=builder.create();
alertDialog.show();
}




2.选择某条信息

setItems

//弹出多条数据
private void selectdialog() {
AlertDialog.Builder builder2=new AlertDialog.Builder(MainActivity.this);
builder2.setTitle("选择的Dialog");
builder2.setItems(mData, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplication(), "选中了第" + which + "条数据", Toast.LENGTH_SHORT).show();
}
});
AlertDialog alertDialog1=builder2.create();
alertDialog1.show();
return;
}




3.单选框的dialog

setSingleChoiceItems

//单选dialog
private void singleSelect() {
AlertDialog.Builder builder3=new AlertDialog.Builder(MainActivity.this);
builder3.setSingleChoiceItems(mSex, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
sex = mSex[which];
Toast.makeText(getApplicationContext(), "你选择的性别是" + mSex[which], Toast.LENGTH_SHORT).show();
}
});
builder3.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {

}
});
builder3.setNeutralButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
mBtnDialog3.setText("您的性别是" + sex);

}
});
AlertDialog alertDialog2=builder3.create();
alertDialog2.show();
}




4.多选框dialog

setMultiChoiceItems

//多选dialog
private void mulselect() {
AlertDialog.Builder builder4=new AlertDialog.Builder(MainActivity.this);
builder4.setMultiChoiceItems(mHobby, mIsChecked, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
mIsChecked[which] = isChecked;
}
});
builder4.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {

}
});
builder4.setNeutralButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
hobby = new StringBuffer();
for (int i = 0; i < mIsChecked.length; i++) {
if (mIsChecked[i]) {
hobby.append(mHobby[i]);
}
}
mBtnDialog4.setText("您的爱好是" + hobby);
}
});
Dialog dialog=builder4.create();
dialog.show();
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: