(1)首先我们写个简单的AlertDialog对话框,要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法,然后创建对话框可以设置对话框的属性,比如设置标题、图标、内容等等。

修改下MainActivity.java方法(Android Studio工具下):

 package com.example.administrator.dialog1;

 import android.app.Activity;
import android.os.Bundle;
import android.app.AlertDialog.Builder;
import android.app.AlertDialog; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法
Builder alertdialog = new AlertDialog.Builder(this);
alertdialog.setTitle("简单对话框"); //设置标题
alertdialog.setMessage("从前有个人,他很冷,最后他冷死了。"); //设置内容
alertdialog.setIcon(R.mipmap.ic_launcher); //设置图标
alertdialog.create();
alertdialog.show();
} }

运行效果:

(2) 接下来我们来设置带按钮的AlertDialog,代码如下:

 package com.example.administrator.dialog1;

 import android.app.Activity;
import android.os.Bundle;
import android.app.AlertDialog.Builder;
import android.app.AlertDialog;
import android.content.DialogInterface; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//
// //要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法
// Builder alertdialog = new AlertDialog.Builder(this);
// alertdialog.setTitle("简单对话框"); //设置标题
// alertdialog.setMessage("从前有个人,他很冷,最后他冷死了。"); //设置内容
// alertdialog.setIcon(R.mipmap.ic_launcher); //设置图标
// alertdialog.create();
// alertdialog.show(); Builder dialog = new AlertDialog.Builder(this);
dialog.setTitle("确定删除?");
dialog.setMessage("您确定删除该条信息吗?");
dialog.setIcon(R.mipmap.ic_launcher); //为“取消”按钮注册监听事件
dialog.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//...
}
}); //为“查看详情”按钮注册监听事件
dialog.setNeutralButton("查看详情", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//...
}
}); //为“确定”按钮注册监听事件
dialog.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//...
}
}); dialog.create();
dialog.show();
} }

运行效果:

说明:setPositiveButton(),setNegativeButton(),setNeutralButton()方法分别用来设置确定按钮、取消按钮、中间按钮的一些属性,在Android2.3 以下平台中,三按钮的位置是相对固定的,分别置于最左侧,最右侧和居中,但在Android4.0以上平台下,setPositiveButton和setNegativeButton位置恰恰相反,分别置于最右侧和最左侧。

(3)带有单选按钮或者复选按钮的AlertDialog对话框

直接上代码:

 package com.example.administrator.dialog1;

 import android.app.Activity;
import android.os.Bundle;
import android.app.Dialog;
import android.app.AlertDialog.Builder;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.widget.Toast; public class MainActivity extends Activity { private int selectedCityIndex = 0; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //定义城市数组
final String[] arrayCity = new String[] { "北京", "上海", "广州", "深圳" }; //实例化AlertDialog对话框
Dialog alertDialog = new AlertDialog.Builder(this)
.setTitle("你最喜欢哪个地方?") //设置标题
.setIcon(R.mipmap.ic_launcher) //设置图标
// 设置对话框显示一个单选List,指定默认选中项,同时设置监听事件处理
.setSingleChoiceItems(arrayCity, 0, new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
selectedCityIndex = which; //选中项的索引保存到选中项变量
}
})
//添加取消按钮并增加监听处理
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
})
//添加确定按钮并增加监听处理
.setPositiveButton("确认", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplication(), arrayCity[selectedCityIndex], Toast.LENGTH_SHORT).show();
}
})
.create();
alertDialog.show();
} }

说明:setSingleChoiceItems(CharSequence[] items, int checkedItem,final OnClickListener listener)方法来实现类似ListView的AlertDialog,第一个参数是要显示的数据的数组,第二个参数指定默认选中项,第三个参数设置监听处理事件。

运行效果:

     

11.Android之常用对话框AlertDialog学习的更多相关文章

  1. Android中的对话框AlertDialog使用技巧合集-转载

    Android中的对话框AlertDialog使用技巧合集     文章来自:http://blog.csdn.net/blue6626/article/details/6641105   今天我用自 ...

  2. android中提示&对话框----AlertDialog

    AlertDialog(对话框) 一.对话框的基本使用流程 step1:创建AlertDialog.Buider; step2:调用setIcon()设置图标,setTitle()或者setCusto ...

  3. Android课程---关于对话框的学习

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  4. Android详细的对话框AlertDialog.Builder使用方法

      我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继 ...

  5. 024 Android 自定义样式对话框(AlertDialog)

    1.AlertDialog介绍 AlertDialog并不需要到布局文件中创建,而是在代码中通过构造器(AlertDialog.Builder)来构造标题.图标和按钮等内容的. 常规使用步骤(具体参见 ...

  6. android常用对话框封装

    在android开发中,经常会用到对话框跟用户进行交互,方便用户可操作性:接下来就对常用对话框进行简单封装,避免在项目中出现冗余代码,加重后期项目的维护量:代码如有问题欢迎大家拍砖指正一起进步. 先贴 ...

  7. 9.Android之日期对话框DatePicker控件学习

    设置日期对话框在手机经常用到,今天来学习下. 首先设置好布局文件:如图 xml对应代码 <?xml version="1.0" encoding="utf-8&qu ...

  8. 【转】【Android】对话框 AlertDialog -- 不错不错

    原文网址:http://blog.csdn.net/feng88724/article/details/6171450 本讲介绍一下Android基本组件:对话框AlertDialog. API: j ...

  9. Android 常用对话框Dialog封装

    Android 6种 常用对话框Dialog封装 包括: 消息对话框.警示(含确认.取消)对话框.单选对话框. 复选对话框.列表对话框.自定义视图(含确认.取消)对话框 分别如下图所示:       ...

随机推荐

  1. 2014 Super Training #4 E Paint the Grid Reloaded --联通块缩点+BFS

    原题: ZOJ 3781 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3781 题意: 给一个n*m的X,O构成的格子,对 ...

  2. 2014 Super Training #4 D Paint the Grid Again --模拟

    原题:ZOJ 3780 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3780 刚开始看到还以为是搜索题,没思路就跳过了.结 ...

  3. Java虚拟机详解03----常用JVM配置参数

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. WPF数字输入框和IP地址输入框

    数字输入框 简介 在业务中,我们经常需要限制用户的输入,比如限制输入长度,限制只能输入数字等等.限制输入长度WPF内置的TextBox已经帮我们解决了,但是限制输入数字却并未在WPF中内置解决方案.使 ...

  5. mac在xampp下使用yii2.0开发环境配置

    在mac上装环境,折腾了我好久.先用是mac自带的php,但自带的PHP很多扩展都需要自己安装.libevent,memcache等扩展都安装好了之后,发现pdo_mysql.dll扩展又没有,悲剧的 ...

  6. VC2010中去掉红绝下划线

    1. 在VC2010 的tools/中找到editior. 已经找到c/c++->advanced->IntelliSense->Disable IntelliSence->T ...

  7. “display:block-inline形式的Span或Div中添加文字后,导致Span或Div排版掉落、错位”的原因及解决方法

    最近在使用3个span(或div)制作带圆角边框的按钮时,按照常识,把span的display设置成inline-block,这样就可以设置span的width和height了,很爽的~ 可是当我在中 ...

  8. NOI 1.7编程基础之字符串(35题)

    01:统计数字字符个数 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 输入一行字符,统计出其中数字字符的个数. 输入 一行字符串,总长度不超过255. 输出 ...

  9. 【WPF】无边框窗体

    之前写了一个支持尺寸变换的无边框窗体的一个基窗体,代码如下: public class LBaseWindow : Window { /// <summary> /// 基窗体 /// & ...

  10. log4j发送邮件乱码

    Log4J发日志邮件给多个接收者及标题.正文乱码问题 以前开发的系统没有单独的日志管理,所有的日志统一输出到tomcat后台一个文件里,不几天就是好几G,现在要整体增加一个Log4J管理日志的功能,其 ...