美文网首页
Android 原生Dialog的基本使用详解

Android 原生Dialog的基本使用详解

作者: DT慕枫 | 来源:发表于2020-07-07 23:49 被阅读0次

前言

项目中为了方便交互,及用户体验等方面的原因,不少地方会用到Dialog,网上有很多非常优秀的自定义的Dialog工具,此处,我们不讲写那么写,我们写最基础的使用方法。

目录

  • 简单提示框
  • 单选提示框
  • 复选提示框
  • 列表显示提示框
  • 进度条加载
  • 加载WebView网页
  • 自定义layout布局

demo存储位置记录:D:\android studio work space\work09\PrimordialDialog

Dialog常用的API

  • AlertDialog.Builder :Dialog对象
  • create():创建Dialog对象
  • show():显示提示框
  • setTitle():设置标题
  • setMessage():设置内容
  • setPositiveButton():设置正向点击按钮
  • setNegativeButton():设置反向点击按钮
  • dismiss():移除Dialog对象
  • setSingleChoiceltems():设置单选列表
  • setMultiChoiceItems():设置复选列表
  • setCancelable():设置点击提示框外部,是否消失
  • setItems():设置item列表数据和监听事件

简单提示框

最简单的Dialog弹框,其实就是一个“提示标题”、“提示内容”、“结束/确定”、“取消”几个元素;同时可以设置builder.setCancelable(false/true)点击Dialog之外处,是否关闭弹框,均可设置。效果图如下:


简单提示框效果图
public void showSimpleDialog(final Activity activity) {
        final AlertDialog.Builder builder = new AlertDialog.Builder(activity);
        builder.setTitle("友情提示");
        builder.setMessage("此处填写提示内容?");
        builder.setCancelable(false);
        builder.setPositiveButton("结束", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        });
        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        });
        builder.create().show();
    }

单选提示框

遇到单选的时候,有时候我们就想到了单向选择框,原生的Dialog中也提供了这样的方法,那么接下来,我们就简单的用示例代码展示一下,效果图如下:


单选提示框效果图
 public void showSingleDialog(final Activity activity,String[] sex) {
        final AlertDialog.Builder builder = new AlertDialog.Builder(activity);
        builder.setTitle("请选择性别");
        builder.setSingleChoiceItems(sex, 0, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).setPositiveButton("确定", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).show();
    }

复选提示框

那么有单选,当然就有复选框了,为了满足用户的需求,Dialog的实现,效果图如下:


复选提示框效果图
/**
     * 复选提示框
     * @param activity
     * @param content
     */
    public void showCheckDialog(final Activity activity,String[] content) {
        final AlertDialog.Builder builder = new AlertDialog.Builder(activity);
        builder.setTitle("复选提示框");
        builder.setMultiChoiceItems(content, null, new DialogInterface.OnMultiChoiceClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i, boolean b) {

            }
        }).setPositiveButton("确定", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).show();
    }

列表提示框

此处我们使用的是原生的Dialog列表样式,效果图如下:


列表提示框效果图
/**
     * 展示item列表
     * @param activity
     * @param item
     */
    public void showListDialog(final Activity activity,String[] item){
        AlertDialog.Builder listDialog = new AlertDialog.Builder(activity);
        listDialog.setTitle("请选择你喜欢的车型");
        listDialog.setCancelable(false);
        listDialog.setItems(item, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

            }
        }).setPositiveButton("确定", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        }).show();
    }

相关文章

  • Android 原生Dialog的基本使用详解

    前言 项目中为了方便交互,及用户体验等方面的原因,不少地方会用到Dialog,网上有很多非常优秀的自定义的Dial...

  • android dialog

    参考于:Android之Dialog详解 7种形式的Android Dialog使用举例 (一)概述 andro...

  • android自定义相对复杂dialog

    之前写了两篇关于Dialog的算是文章吧(2333),分别是:1、 Android 系统原生dialog使用2、 ...

  • Android Dialog使用详解

    对话框是提示用户作出决定或输入额外信息的小窗口,通常不会填充整个屏幕,用于进行一些额外交互 Dialog 类是对话...

  • reactnative ~ android 模块通讯混合跳转方案

    rn ~ android 模块通讯混合跳转方案详解 android原生 接入rn模块 原生接入rn + 通信详解资...

  • Dialog的使用2018-08-12

    Dialog 是android 原生的弹出框一共有7种吧(尾部有原生dialog的github地址) 首先如果要看...

  • AIDL

    Android中AIDL的基本用法Android 中AIDL的使用与理解Android AIDL使用详解彻底明白A...

  • Android 系统原生dialog使用

    先上图,不上图的程序员不是好程序员: 看了效果下面该看代码了 1、MainActivity的xml内代码 2、Ma...

  • flutter打包aar

    Flutter项目打成AAR供Android原生使用步骤 一、打成本地AAR步骤详解 1、用Android Stu...

  • 几种基本对话框,AlertDialog

    基本的 alertdialog 使用 3 个按钮 参考文章android 8 种对话框(Dialog)使用方法汇总...

网友评论

      本文标题:Android 原生Dialog的基本使用详解

      本文链接:https://www.haomeiwen.com/subject/hlfxcktx.html