Android系统对话框

效果图

2个按钮的对话框

3个按钮的对话框

自定义View的对话框

单选对话框

多选对话框

列表框

Code

XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.kongqw.dialogdemo.MainActivity"><Button
        android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="button1"android:text="2个按钮的对话框" /><Button
        android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="button2"android:text="3个按钮的对话框" /><Button
        android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="button3"android:text="一个View" /><Button
        android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="button4"android:text="单选框" /><Button
        android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="button5"android:text="复选框" /><Button
        android:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="button6"android:text="列表框" />
</LinearLayout>

主类

package com.kongqw.dialogdemo;import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public void button1(View view) {AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setMessage("确认退出吗?");builder.setTitle("提示");builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.dismiss();finish();}});builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.dismiss();}});builder.create().show();}public void button2(View view) {Dialog dialog = new AlertDialog.Builder(this).setIcon(android.R.drawable.btn_star).setTitle("升级").setMessage("发现新版本").setPositiveButton("升级", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this, "升级", Toast.LENGTH_SHORT).show();}}).setNegativeButton("不升级", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this, "不升级", Toast.LENGTH_SHORT).show();}}).setNeutralButton("忽略", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this, "忽略", Toast.LENGTH_SHORT).show();}}).create();dialog.show();}public void button3(View view) {new AlertDialog.Builder(this).setTitle("请输入").setIcon(android.R.drawable.ic_dialog_info)// .setView(new EditText(this)).setView(View.inflate(this, R.layout.bitmain_tab, null)).setPositiveButton("确定", null).setNegativeButton("取消", null).show();}public void button4(View view) {new AlertDialog.Builder(this).setTitle("单选框").setIcon(android.R.drawable.ic_dialog_info).setSingleChoiceItems(new String[]{"Android", "IOS"}, 0, new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int which) {dialog.dismiss();}}).setNegativeButton("取消", null).show();}public void button5(View view) {new AlertDialog.Builder(this).setTitle("复选框").setMultiChoiceItems(new String[]{"Android", "IOS"}, null, new DialogInterface.OnMultiChoiceClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which, boolean isChecked) {Toast.makeText(MainActivity.this,"which = " + which + "   isChecked = " + isChecked,Toast.LENGTH_SHORT).show();}}).setPositiveButton("确定", null).setNegativeButton("取消", null).show();}public void button6(View view) {new AlertDialog.Builder(this).setTitle("列表框").setItems(new String[]{"Item1", "Item2"}, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(MainActivity.this,"which = " + which,Toast.LENGTH_SHORT).show();}}).setNegativeButton("确定", null).show();}
}

自定义View

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="wrap_content"><EditText
        android:id="@+id/editText1"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_margin="10dp"android:hint="请输入内容1"/><EditText
        android:id="@+id/editText2"android:layout_margin="10dp"android:layout_below="@id/editText1"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入内容2"/></RelativeLayout>

Android系统对话框相关推荐

  1. Android系统搜索对话框(浮动搜索框)的使用

    http://www.ideasandroid.com/archives/310 Android系统搜索对话框(浮动搜索框)的使用 作者: ideasandroid 分类: android基础, an ...

  2. Android——最全的系统对话框(AlertDialog)详解

    在实际应用开发中,用到系统对话框中的情况几乎是没有的.按开发流程来说,UI工程师都会给出每一个弹窗的样式,故而在实际开发中都是自定义弹窗的. 即使用到的地方不多,但是我们也是需要了解并且能熟练的运用它 ...

  3. Android系统插入USB设备自动授权不弹出对话框

    Android系统插入USB设备时,系统会弹出询问权限的对话框,现在需要不弹对话框而直接授权. 修改/frameworks/base/packages/SystemUI/src/com/android ...

  4. Android系统自带样式(android:theme)(转)

    Android系统自带样式(android:theme)(转) android:theme="@android:style/Theme.Dialog" : Activity显示为对 ...

  5. Android之对话框Dialog的创建

    今天我们来讲讲android的对话框(Dialog),大家一定很奇怪为什么从4直接跳到7,因为今天我朋友问了我对话框的用法,所以今天就先讲下这个,至于上两章的上下文菜单(ContextMenu).子菜 ...

  6. Android系统Recovery工作原理之使用update.zip升级过程分析(五)

    Android系统Recovery工作原理之使用update.zip升级过程分析(五)---update.zip包从上层进入Recovery服务文章开头我们就提到update.zip包来源有两种,一个 ...

  7. 【Android NDK 开发】在 C 代码中获取 Android 系统信息 ( NDK 项目创建 | NDK 配置 | 获取 Android 系统版本号 )

    文章目录 I . 创建 NDK 项目 II . NDK 项目 相关配置 III . NDK 中获取 Android 版本号 IV . 使用 __system_property_get 可获取的参数 I ...

  8. 根据用户查进程_【磨叽教程】Android进阶教程之在Android系统下各进程之间的优先级关系...

    导读:本文大约2000字,预计阅读时间3分钟.本文纯属技术文,无推广. 正文     首先应用进程的生命周期并不由应用本身直接控制,而是由系统综合多种因素来确定的.Android系统有自己的一套标准, ...

  9. Android 系统权限

    Android 是一个权限分隔的操作系统,其中每个应用都有其独特的系统标识(Linux 用户 ID 和组 ID).系统各部分也分隔为不同的标识.Linux 据此将不同的应用之间.应用与系统之间分隔开来 ...

最新文章

  1. set list词频排序java_Hadoop WordCount改进实现正确识别单词以及词频降序排序 | 学步园...
  2. Event Tracing for Windows
  3. java hex to float_Hex to Float
  4. 浅说 Rewrite规则简介
  5. 学什么c语言标准,C语言的标准 “输入输出”!今天是你学C语言的第几天?
  6. 进程的内存空间相互隔离
  7. centos下配置java环境变量
  8. 2.2 理解 mini-batch 梯度下降法
  9. 深度学习基础 | NLP大魔王 · BERT
  10. SqlServer日常积累(二)
  11. Chrome谷歌浏览器插件
  12. 服务器来料检测作用,IQC来料检验项目
  13. 怎样在html中插入ppt,PPT怎么插入网页中的视频
  14. 华为路由器配置IPSec (手动配置)
  15. JavaScript 详解(表单验证,JSON,JS事件,JS函数)
  16. 解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
  17. AcWing 导弹防御系统 Python代码
  18. 《当我谈跑步时我谈些什么》:痛苦难以避免,而磨难可以选择
  19. 计算机视觉:图像映射与全景拼接
  20. 阿德莱德大学语言班成绩为C,阿德莱德大学语言课程入学要求

热门文章

  1. mysql 服务没有报告任何错误_mysql 服务无法启动 服务没有报告任何错误
  2. c语言什么叫为代码写注释算法,急!-伪代码不知哪位高手能够告诉我,什么是伪代码?伪代码编 爱问知识人...
  3. 鸿蒙系统下滑线怎么设置,微信下划线昵称教程来了,快来试试!
  4. 使命召唤ol服务器位置,服务器架构升级 使命召唤OL跨区作战时代来临!
  5. canopy算法流程_Canopy聚类算法
  6. python 调用rpc服务_在Django项目中对Python函数进行RPC调用的优雅方式
  7. selenium 保持窗口一直开启_Python+selenium自动化测试
  8. Win10配置MinGW教程
  9. mysql分表全局查询_mysql如何查询多样同样的表/sql分表查询、java项目日志表分表的开发思路/按月分表...
  10. android图片上加有汉字,Android 为图片添加文字水印