欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

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.该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。

7种形式的Android Dialog使用实例

创建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.改变了对话框的图表,添加了三个按钮

7种形式的Android Dialog使用实例

创建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类型

7种形式的Android Dialog使用实例

创建dialog方法的代码如下:

new alertdialog.builder(this).settitle("请输入").seticon(
     android.r.drawable.ic_dialog_info).setview(
     new edittext(this)).setpositivebutton("确定", null)
     .setnegativebutton("取消", null).show();

4.信息内容是一组单选框

7种形式的Android Dialog使用实例

创建dialog方法的代码如下:

new alertdialog.builder(this).settitle("复选框").setmultichoiceitems(
     new string[] { "item1", "item2" }, null, null)
     .setpositivebutton("确定", null)
     .setnegativebutton("取消", null).show();

5.信息内容是一组多选框

7种形式的Android Dialog使用实例

创建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.信息内容是一组简单列表项

7种形式的Android Dialog使用实例

创建dialog的方法代码如下:

new alertdialog.builder(this).settitle("列表框").setitems(
     new string[] { "item1", "item2" }, null).setnegativebutton(
     "确定", null).show();

7.信息内容是一个自定义的布局

7种形式的Android Dialog使用实例

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的时候就可以拿出来看看。

上一篇:

下一篇: