关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » 安卓开发 »Android Dialog的7种形式实现方式

    Android Dialog的7种形式实现方式

    2014-11-27 00:00:00 出处:楚云之南
    分享

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

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    Edge浏览器百度被劫持/篡改怎么办,地址后边跟着尾巴#tn=68018901_7_oem_dg

    Google Chrome 在 iPhone 上新增了 Safari 数据导入选项

    Windows 11专业版 KMS工具激活产品密钥的方法

    DEDECMS安全策略官方出品

    Microsoft Text Input Application 可以关闭吗?

    新版本QQ如何关闭自带的浏览器?

    C++编程语言中continue的用法和功能,附举例示范代码

    c++ map 的数据结构、基本操作以及其在实际应用中的使用。

    C语言如何避免内存泄漏、缓冲区溢出、空指针解引用等常见的安全问题

    C语言中的break语句详解

    IT头条

    马斯克2026最新采访总结:2040年,全球机器人数量将突破100亿台

    23:52

    专家解读|规范人工智能前沿业态健康发展的新探索:解读《人工智能拟人化互动服务管理暂行办法》

    00:54

    用至强 6高存力搞定MoE卸载!

    17:53

    美国将允许英伟达向中国“经批准的客户”出售H200 GPU

    02:08

    苹果与微信就15%手续费达成一致?腾讯未置可否

    22:00

    技术热点

    PHP 和 Node.js 的10项对比挑战

    Javascript闭包深入解析及实现方法

    windows 7、windows 8.1手动增加右键菜单功能技巧

    MYSQL出错代码大汇总

    windows 7假死机怎么办 windows 7系统假死机的原因以及解决方法

    Ubuntu(Linux)下配置IP地址的方法

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。