7种形式的Android Dialog使用实例
程序员文章站
2023-12-22 15:08:04
在android开发中,我们经常会需要在android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它android dialog对话框,在我们使用and...
在android开发中,我们经常会需要在android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它android dialog对话框,在我们使用android的过程中,我归纳了一下,android dialog的类型无非也就7种,下面我分别向大家介绍这7种android dialog对话框的使用方法,希望对大家能有所帮助。
1.该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。
创建dialog对话框方法代码如下:
protected void dialog() { alertdialog.builder builder = new builder(main.this); builder.setmessage("确认退出吗?"); builder.settitle("提示"); builder.setpositivebutton("确认", new onclicklistener() { @override public void onclick(dialoginterface dialog, int which) { dialog.dismiss(); main.this.finish(); } }); builder.setnegativebutton("取消", new onclicklistener() { @override public void onclick(dialoginterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); }
在onkeydown(int keycode, keyevent event)方法中调用此方法
public boolean onkeydown(int keycode, keyevent event) { if (keycode == keyevent.keycode_back && event.getrepeatcount() == 0) { dialog(); } return false; }
2.改变了对话框的图表,添加了三个按钮
创建dialog的方法代码如下:
dialog dialog = new alertdialog.builder(this).seticon( android.r.drawable.btn_star).settitle("喜好调查").setmessage( "你喜欢李连杰的电影吗?").setpositivebutton("很喜欢", new onclicklistener() { @override public void onclick(dialoginterface dialog, int which) { // todo auto-generated method stub toast.maketext(main.this, "我很喜欢他的电影。", toast.length_long).show(); } }).setnegativebutton("不喜欢", new onclicklistener() { @override public void onclick(dialoginterface dialog, int which) { // todo auto-generated method stub toast.maketext(main.this, "我不喜欢他的电影。", toast.length_long) .show(); } }).setneutralbutton("一般", new onclicklistener() { @override public void onclick(dialoginterface dialog, int which) { // todo auto-generated method stub toast.maketext(main.this, "谈不上喜欢不喜欢。", toast.length_long) .show(); } }).create(); dialog.show();
3.信息内容是一个简单的view类型
创建dialog方法的代码如下:
new alertdialog.builder(this).settitle("请输入").seticon( android.r.drawable.ic_dialog_info).setview( new edittext(this)).setpositivebutton("确定", null) .setnegativebutton("取消", null).show();
4.信息内容是一组单选框
创建dialog方法的代码如下:
new alertdialog.builder(this).settitle("复选框").setmultichoiceitems( new string[] { "item1", "item2" }, null, null) .setpositivebutton("确定", null) .setnegativebutton("取消", null).show();
5.信息内容是一组多选框
创建dialog方法的代码如下:
new alertdialog.builder(this).settitle("单选框").seticon( android.r.drawable.ic_dialog_info).setsinglechoiceitems( new string[] { "item1", "item2" }, 0, new dialoginterface.onclicklistener() { public void onclick(dialoginterface dialog, int which) { dialog.dismiss(); } }).setnegativebutton("取消", null).show();
6.信息内容是一组简单列表项
创建dialog的方法代码如下:
new alertdialog.builder(this).settitle("列表框").setitems( new string[] { "item1", "item2" }, null).setnegativebutton( "确定", null).show();
7.信息内容是一个自定义的布局
dialog布局文件代码如下:
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="wrap_content" android:background="#ffffffff" android:orientation="horizontal" android:id="@+id/dialog"> <textview android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/tvname" android:text="姓名:" /> <edittext android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/etname" android:minwidth="100dip"/> </linearlayout>
创建dialog方法的代码如下:
layoutinflater inflater = getlayoutinflater(); view layout = inflater.inflate(r.layout.dialog, (viewgroup) findviewbyid(r.id.dialog)); new alertdialog.builder(this).settitle("自定义布局").setview(layout) .setpositivebutton("确定", null) .setnegativebutton("取消", null).show();
好了,以上7种android dialog对话框的使用方法就介绍到这里了,基本都全了,如果大家在android开发过程中遇到dialog的时候就可以拿出来看看。