在主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. python --字符串学习

    一 转义字符 借用一个特殊的方法表示一系列不方便写出的内容,比如回车键,换行符,退格键 借助反斜杠字符,一旦出现反斜杠,则反斜杠后面一个或者几个字符表示已经不是原来的意思了 在字符串中,一旦出现了斜杠 ...

  2. JQ选择器-选择符合条件的元素,获取对应关系元素

    如果你想寻找id以“sub_”开头的元素,你可以使用: $("*[id^='sub_']") 如果你想寻找id以“trim”结尾的元素,你可以使用: $("*[id$=' ...

  3. box-sizing 可以使border padding不影响设置的盒子尺寸

  4. 【雕爷学编程】Arduino动手做(47)---七段LED数码管模块

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

  5. 「雕爷学编程」Arduino动手做(12)——霍尔磁力模块

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

  6. vue 细节注意

    *只有vm.$data这些被代理的属性是响应的,能够重新渲染视图 *注意,不要在实例属性或者回调函数中(如 vm.$watch('a', newVal => this.myMethod()))使 ...

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

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

  8. Netty框架问题记录1--多线程下批量发送消息导致消息被覆盖

    业务背景 项目是基于Netty实现的实时课堂项目,课堂中老师需要对试卷进行讲解,则老师向服务器发送一个打开试卷信息的请求,服务器获取试卷信息,将试卷信息发送给所有的客户端(学生和老师). 发送给学生的 ...

  9. .Net基础之5——复杂数据类型

    (1)复习 1.变量 int  double   string   char   bool    decimal 变量的使用规则:先声明再赋值最后使用 2.Camo      Pascal 3.运算符 ...

  10. 25-12 空值处理(null值)

    --------------------空值处理--------------------- select * from TblStudent --查询所有年龄是null的同学学习信息 --null值无 ...