Android控件——7种形式的Android Dialog使用举例(转载)
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一下,Android Dialog的类型无非也就7种,下面我分别向大家介绍这7种Android Dialog对话框的使用方法,希望对大家能有所帮助。
1.该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。

创建dialog对话框方法代码如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
protected void dialog() { AlertDialog.Builder builder = new Builder(Main. this ); builder.setMessage( "确认退出吗?" ); builder.setTitle( "提示" ); builder.setPositiveButton( "确认" , new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); Main. this .finish(); } }); builder.setNegativeButton( "取消" , new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); } |
在onKeyDown(int keyCode, KeyEvent event)方法中调用此方法
|
1
2
3
4
5
6
|
public boolean onKeyDown( int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0 ) { dialog(); } return false ; } |
2.改变了对话框的图表,添加了三个按钮

创建dialog的方法代码如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
Dialog dialog = new AlertDialog.Builder( this ).setIcon( android.R.drawable.btn_star).setTitle( "喜好调查" ).setMessage( "你喜欢李连杰的电影吗?" ).setPositiveButton( "很喜欢" , new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub Toast.makeText(Main. this , "我很喜欢他的电影。" , Toast.LENGTH_LONG).show(); } }).setNegativeButton( "不喜欢" , new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub Toast.makeText(Main. this , "我不喜欢他的电影。" , Toast.LENGTH_LONG) .show(); } }).setNeutralButton( "一般" , new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub Toast.makeText(Main. this , "谈不上喜欢不喜欢。" , Toast.LENGTH_LONG) .show(); } }).create(); dialog.show(); |
3.信息内容是一个简单的View类型

创建dialog方法的代码如下:
|
1
2
3
4
|
new AlertDialog.Builder( this ).setTitle( "请输入" ).setIcon( android.R.drawable.ic_dialog_info).setView( new EditText( this )).setPositiveButton( "确定" , null ) .setNegativeButton( "取消" , null ).show(); |
4.信息内容是一组单选框

创建dialog方法的代码如下:
|
1
2
3
4
|
new AlertDialog.Builder( this ).setTitle( "复选框" ).setMultiChoiceItems( new String[] { "Item1" , "Item2" }, null , null ) .setPositiveButton( "确定" , null ) .setNegativeButton( "取消" , null ).show(); |
5.信息内容是一组多选框

创建dialog方法的代码如下:
|
1
2
3
4
5
6
7
8
|
new AlertDialog.Builder( this ).setTitle( "单选框" ).setIcon( android.R.drawable.ic_dialog_info).setSingleChoiceItems( new String[] { "Item1" , "Item2" }, 0 , new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }).setNegativeButton( "取消" , null ).show(); |
6.信息内容是一组简单列表项

创建dialog的方法代码如下:
|
1
2
3
|
new AlertDialog.Builder( this ).setTitle( "列表框" ).setItems( new String[] { "Item1" , "Item2" }, null ).setNegativeButton( "确定" , null ).show(); |
7.信息内容是一个自定义的布局

dialog布局文件代码如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
<? xml version = "1.0" encoding = "utf-8" ?> android:layout_height = "wrap_content" android:layout_width = "wrap_content" android:background = "#ffffffff" android:orientation = "horizontal" android:id = "@+id/dialog" > < TextView android:layout_height = "wrap_content" android:layout_width = "wrap_content" android:id = "@+id/tvname" android:text = "姓名:" /> < EditText android:layout_height = "wrap_content" android:layout_width = "wrap_content" android:id = "@+id/etname" android:minWidth = "100dip" /> </ LinearLayout > |
创建dialog方法的代码如下:
|
1
2
3
4
5
6
|
LayoutInflater inflater = getLayoutInflater(); View layout = inflater.inflate(R.layout.dialog, (ViewGroup) findViewById(R.id.dialog)); new AlertDialog.Builder( this ).setTitle( "自定义布局" ).setView(layout) .setPositiveButton( "确定" , null ) .setNegativeButton( "取消" , null ).show(); |
Android控件——7种形式的Android Dialog使用举例(转载)的更多相关文章
- Android控件点击事件
1. 介绍 本文介绍了Android控件的点击事件 Android控件点击(onClick)事件可以用如下三种方式来实现 2. 实现onClick方法 在layout的xml中指定onClick方法, ...
- Android控件系列之RadioButton&RadioGroup(转)
学习目的: 1.掌握在Android中如何建立RadioGroup和RadioButton 2.掌握RadioGroup的常用属性 3.理解RadioButton和CheckBox的区别 4.掌握Ra ...
- Android初级教程_获取Android控件的宽和高
转载:http://blog.csdn.net/johnny901114/article/details/7839512 我们都知道在onCreate()里面获取控件的高度是0,这是为什么呢?我们来看 ...
- Android入门(六):Android控件布局属性全解
第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中 (Hrizontal表示水平)android:layout_centerVertical 垂 ...
- Android 控件架构及View、ViewGroup的测量
附录:示例代码地址 控件在Android开发的过程中是必不可少的,无论是我们在使用系统控件还是自定义的控件.下面我们将讲解一下Android的控件架构,以及如何实现自定义控件. 1.Android控件 ...
- Android控件属性大全(转)
http://blog.csdn.net/pku_android/article/details/7365685 LinearLayout 线性布局 子元素任意: Tab ...
- UIAutomator定位Android控件的方法
UIAutomator各种控件定位的方法. 1. 背景 使用SDK自带的NotePad应用,尝试去获得在NotesList那个Activity里的Menu Options上面的那个Add note菜单 ...
- Android控件系列之CheckBox
学习目的: 1.掌握在Android中如何建立CheckBox 2.掌握CheckBox的常用属性 3.掌握CheckBox选中状态变换的事件(监听器) CheckBox简介: CheckBox和Bu ...
- android控件的属性
android控件的属性 本节描述android空间的位置,内容等相关属性及属性的含义 第一类:属性值为true或false android:layout_centerHrizontal 水平居中 ( ...
随机推荐
- 在笛卡尔坐标系上描绘函数 y=4x^2-2/4x-3
代码: <!DOCTYPE html> <html lang="utf-8"> <meta http-equiv="Content-Type ...
- Java读写二进制文件示例
相对于文本文件,二进制文件读写快,定位快而准,下面是代码示例: import java.io.DataInput; import java.io.DataOutput; import java.io. ...
- 【Spark】RDD操作具体解释2——值型Transformation算子
处理数据类型为Value型的Transformation算子能够依据RDD变换算子的输入分区与输出分区关系分为下面几种类型: 1)输入分区与输出分区一对一型 2)输入分区与输出分区多对一型 3)输入分 ...
- [LeetCode][Java] Substring with Concatenation of All Words
题目: You are given a string, s, and a list of words, words, that are all of the same length. Find all ...
- 2014面试总结--java、数据 方向
这里不讲详细的题目.仅仅是总结一下体会. 好一点的公司考察的都比較全面,主要看你对原理性的理解.还有你的思维逻辑:就眼下来讲,对深度的考察大于广度.而我个人如今这个阶段也比較专注于深度. 列一些常常问 ...
- 十分钟使用ionic Framework开发一个跨平台移动应用
Ionic是一个前端的框架,帮助开发人员使用HTML5, CSS3和JavaScript做出原生应用. ionic的理念类似前端开发的BootStrap,目标是封装HTML5移动跨平台开发的最佳实践. ...
- 解决Android NDK 报jxxx编译找不到
如题 解决: 引入NDK对应的arm或者x86库 如果你用的是GinyMotion模拟器,那就引入x86库 不多说了,见截图 1.选择Propertities->C/C++ General-&g ...
- Codeforces Round #177 (Div. 2) 题解
[前言]咦?如今怎么流行打CF了?于是当一帮大爷在执着的打div 1的时候,我偷偷的在刷div 2.至于怎么决定场次嘛.一般我报一个数字A,随便再拉一个人选一个数字B.然后開始做第A^B场.假设认为机 ...
- 【VBA编程】10.自定义集合
自定义集合类型,类似于变量声明,只是要将Dim关键字和New collection关键字搭配起来使用,其语法描述如下:其中集合名的命名方式同于标准变量的命名 Dim 集合名 As New collec ...
- 从MVC和三层架构说到ssh整合开发-下
这章主要讲整合开发,直接从实战讲起,对与ssh的单方面了解,请继续等待我的兴许文章. 解说不到位的地方欢迎大家指正:联系方式rlovep.com 具体请看源码凝视: 全部代码下载(csdn):链接 G ...