在主XML中声明两个Button,声明Id

package com.example.myapplication;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity; import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast; public class alert extends AppCompatActivity { private Button putong1;
private Button duoanniu1; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_alert);
putong1 = findViewById(R.id.putong);
putong1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ShowDialogNormal();
}
});
duoanniu1 =findViewById(R.id.duoanniu);
duoanniu1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ShowDialogMany();
}
});
}
}

在主类中声明两个Button,分别进行绑定

给Button设置单击事件

大概就是固定的,主要是OnClick里面的方法是一会定义的,一步一步来,两个按钮都进行这样的处理

记得两个按钮的名字和OnClick里面的方法名不一样

private void ShowMessage(String str) {
Toast.makeText(alert.this, str, Toast.LENGTH_LONG);
}

建立一个消息提示,具体的可以百度搜索Toast如何使用

里面参数的意义为(当前类,提示的信息,提示的时间长短);

(在中间那一行的后面加上.show();即可立即提示,这里的提示我们下面有相应的操作就不立即提示了)

 public void ShowDialogNormal() {
AlertDialog.Builder normal = new AlertDialog.Builder(alert.this);
normal.setIcon(R.drawable.cat);
normal.setTitle("普通按钮标题");
normal.setMessage("请保管对你的随身物品!");
normal.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("你点击的普通按钮");
}
});
normal.create().show();
}

单选按钮对话框的处理

AlertDialog.Builder是提示对话框必需品需要实例化使用,参数为(当前的类)

下一行设置的是提示对话框的图标

下一行是提示对话框的标题

下一行是提示对话框的内容

下一行提示对话框的按钮(固定格式)

参数为(按钮的内容,DialogInterface.OnClickListener)

在OnClick里面写的是刚才声明的方法(传入的参数为你要提示的内容)

最后进行创造并且显示出来

 public  void  ShowDialogMany(){
AlertDialog.Builder many = new AlertDialog.Builder(alert.this);
many.setIcon(R.drawable.cow);
many.setTitle("多选按钮标题");
many.setMessage("对多选按钮的态度吗");
many.setNeutralButton("中立", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("中立按钮");
}
});
many.setNegativeButton("反对", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("反对按钮");
}
});
many.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("您点击的确定");
}
}); many.create().show();
}

多选按钮对话框的处理

AlertDialog.Builder是提示对话框必需品需要实例化使用,参数为(当前的类)

下一行设置的是提示对话框的图标

下一行是提示对话框的标题

下一行是提示对话框的内容

第一个提示对话框的按钮(固定格式)

参数为(按钮的内容,DialogInterface.OnClickListener)这个按钮会提示在左面

第二个提示对话框按钮会提示在中间靠右(从右往左数第二个)

第三个提示对话框按钮会提示在最右面

这三个设置的对话框按钮有稍许的不同

运行运行运行:

界面



运行单选按钮:

运行多选按钮:

Android中如何使用对话框(单选对话框和多选对话框)的更多相关文章

  1. Android笔记(十五) Android中的基本组件——单选框和复选框

    单选框和多选框通常用来在设置用户个人资料时候,选择性别.爱好等,不需要用户直接输入,直接在备选选项中选择,简单方便. 直接看代码: <?xml version="1.0" e ...

  2. Android中的AlertDialog使用示例二(普通选项对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  3. NopCommerce 3.4中商品详情页面单选框、复选框的美化

    先上图给大家看看效果,点这里打开网站(后期可能会找不到这个商品,现在再测试阶段) 现在你能看到的这个页面中,尺寸.文本描述是单选框(属性是我乱写的名字),上门安装是复选框.效果就看到这里,请君跳过图片 ...

  4. Android 常见对话框的简单使用(提示信息对话框、单选多选对话框、自定义对话框)

    目录 一.提示信息对话框: 二.单选对话框: 三.多选对话框: 四.自定义对话框: 演示项目完整代码: 一.提示信息对话框: //显示提示消息对话框 private void showMsgDialo ...

  5. Android中的普通对话框、单选对话框、多选对话框、带Icon的对话框、以及自定义Adapter和自定义View对话框详解

    对话框就是一个AlertDialog,但是一个简单的AlertDialog,我们却可以将它玩出许多花样来,下面我们就来一起总结一下AlertDialog的用法.看看各位童鞋在平时的工作中否都用到了Al ...

  6. android中常见对话框之一AlertDialog

    在Android应用中,有多种对话框:Dialog.AlertDialog.ProgressDialog.时间.日期等对话框. (1)Dialog类,是一切对话框的基类,需要注意的是,Dialog类虽 ...

  7. Android开发之使用AlertDialog创建对话框,单选框和多选框

    对话框: 对话框的icon,title,message等都可以不设置. 单选框和多选框与对话框勾选步骤基本上一致. 对话框的构建步骤: 1.使用AlertDialog类的内部类Builder类new ...

  8. Android中Dialog对话框的调用及监听

    Android中经常会需要在Android界面上弹出一些对话框提示用户,比如App的退出的时候都会有各种框来挽留你的心,支付宝的时候输入密码的密码框,非常常见及其实用的功能,类似于JS中的alter, ...

  9. android中的常见对话框

    在android中对话框是一种常见的操作,常见的对话框有下面几种: 以下是xml布局文件: <LinearLayout xmlns:android="http://schemas.an ...

随机推荐

  1. Sharding JDBC整合SpringBoot 2.x 和 MyBatis Plus 进行分库分表

    Sharding JDBC整合SpringBoot 2.x 和 MyBatis Plus 进行分库分表 交易所流水表的单表数据量已经过亿,选用Sharding-JDBC进行分库分表.MyBatis-P ...

  2. Linux常用命令详解—基于CentOS7

    ## Linux 目录- /:根目录,一般只存放目录,不存放文件- /bin -> /usr/bin:可执行二进制文件的目录,也是常用命令目录,如常用的命令 ls.cat.mv 等- /boot ...

  3. strcmp比较字符串

    0x01 <?php $flag = "flag{xxxxx}"; if (isset($_GET['a'])) { if (strcmp($_GET['a'], $flag ...

  4. assign 与 深浅拷贝

    Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象.它将返回目标对象. 如果目标对象中的属性具有相同的键,则属性将被源对象中的属性覆盖.后面的源对象的属性将类 ...

  5. 【雕爷学编程】Arduino动手做(49)---有源蜂鸣器模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备 ...

  6. 实现es6中的set和map

    转载自: https://www.cnblogs.com/hui-fly/p/9459152.html https://blog.csdn.net/roamingcode/article/detail ...

  7. 前后端分离产生的跨域问题的解决方案之--jsonp、nginx代理、设置头信息等

    前言 在前后端没有分离的时候,前端开发要么是写静态页面,数据渲染后端来做,要么就是前端的页面和后端的代码刚开始的时候就合并在一起,每次后端代码更新了之后,前端也要更新一下代码,然后重启一下服务,还是比 ...

  8. Spring + Struts + Hibernate 简单封装通用接口

    1.BaseDao public interface BaseDao<T> { /** * 获取符合条件的记录数 * @param filter * @param sortName * @ ...

  9. MySQL slave状态之Seconds_Behind_Master zz

    在MySQL的主从环境中,我们可以通过在slave上执行show slave status来查看slave的一些状态信息,其中有一个比较重要的参数Seconds_Behind_Master.那么你是否 ...

  10. python—day02_基本数据类型

    1,字符串 字符串常用功能: 移除空白 分割 长度 索引 切片 1)移除空白 """S.strip([chars]) -> str Return a copy of ...