android 对话框大全,Android 对话框AlertDialog,PopupWindow使用大全

对话框种类1.AlertDialog(Dialog)系统对话框。 2.Popupwindow弹出式对话框。对话框区别1.AlertDialog非阻塞式对话框:对话框的显示不影响后台任务的执行。 2.Pop

对话框种类

1.AlertDialog(Dialog)系统对话框。

2.Popupwindow弹出式对话框。

对话框区别

1.AlertDialog非阻塞式对话框:对话框的显示不影响后台任务的执行。

2.PopupWindow阻塞式对话框:对话框弹出后阻塞后台任务执行,直到对话框消失。

3.AlertDialog默认半透明背景,PopupWindow默认没有半透明背景。

4.PopupWindow默认不响应Back键,除非设置pw.setBackgroundDrawable(new ColorDrawable(0x00000000));

5.PopupWindow默认没有标题,AlertDialog默认是有标题的,当然可以设置dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);取消标题。

对话框示例

Dialog类的对话框

我们一般使用AlertDialog对话框,那么和Dialog有什么区别呢,其实AlertDialog只是继承了Dialog,实现了一些自己的方法而已。所以,AlertDialog和Dialog属于同一种对话框。那么我们就拿AlertDialog来说。

多按钮对话框

9cc8aeb3f991e6ebd66d88752ebaaed3.png

/**

* 多按钮对话框

*/

() {

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("确定对话框");

builder.setMessage("测试对话框");

builder.setPositiveButton("好评", new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

}

});

builder.setNegativeButton("差评", new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

}

});

builder.setNeutralButton("点赞", new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

}

});

builder.setIcon(R.drawable.ic_launcher);

builder.show();

}

单选对话框

a5b64b427a0fa6f34d04bf04e18fa0b8.png

/**

* 单选对话框

*/

() {

String items[] = {"item1", "item2", "item3", "item4", "item5"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);

int position = 0;//默认单选的位置

builder.setTitle("单选对话框").setSingleChoiceItems(items, position, new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

//TODO 实现自己的需求

}

}).show();

}

多选对话框

ed614e35bde3ebadb5e7653e83c67400.png

/**

* 多选对话框

*/

() {

//默认多选的状态

boolean b[] = {false, false, true, false, false};

String items[] = {"item1", "item2", "item3", "item4", "item5"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("多选对话框").setMultiChoiceItems(items, b, new DialogInterface.OnMultiChoiceClickListener() {

(DialogInterface dialog, int which, boolean isChecked) {

//TODO 实现自己的需求

}

}).show();

}

列表对话框

abdeda0c28550110f39413a0d66c939d.png

/**

* 列表对话框

*/

() {

String items[] = {"item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("列表对话框").setItems(items, new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

//TODO 实现自己的需求

}

}).show();

}

添加自定义布局对话框

761ddce3532f5100015cc402414790a5.png

/**

* 添加自定义布局对话框

*/

() {

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setIcon(R.drawable.ic_launcher).setTitle("添加布局对话框").

setPositiveButton("yes", new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

}

}).setNegativeButton("no", new DialogInterface.OnClickListener() {

(DialogInterface dialog, int which) {

}

}).setMessage("这个内容根据自己需求,可要可不要");

View view = LayoutInflater.from(this).inflate(R.layout.items, null);

AlertDialog dialog = builder.create();

dialog.setView(view);

dialog.show();

}

简单自定义对话框1

60ab4ff0ff8bef183ffc96d19704a43e.png

/**

* 简单自定义对话框1

*/

() {

Dialog dialog = new Dialog(this);

dialog.setTitle("自定义对话框1");

dialog.setContentView(R.layout.items);

//设置点击对话框内容之外对话框消失

dialog.setCanceledOnTouchOutside(true);

dialog.show();

}

简单自定义对话框2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值