android对话框(Dialog)的使用方法
Activities提供了一种方便管理的创建、保存、回复的对话框机制。比如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog(int), dismissDialog(int)等方法,假设使用这些方法的话。Activity将通过getOwnerActivity()方法返回该Activity管理的对话框(dialog).
Android API支持下面类型的Dialog对象:
警告对话框 AlertDialog: 一个能够有0到3个button, 一个单选框或复选框的列表的对话框. 警告对话框能够创建大多数的交互界面, 是推荐的类型.
进度对话框 ProgressDialog: 显示一个进度环或者一个进度条. 因为它是AlertDialog的扩展, 所以它也支持button.
日期选择对话框 DatePickerDialog: 让用户选择一个日期.
时间选择对话框 TimePickerDialog: 让用户选择一个时间.
假设你希望自己定义你的对话框, 能够扩展Dialog类.
怎样显示一个Dialog
1、一个对话框总是被创建和显示为一个Activity的一部分. 你应该在Activity的onCreateDialog(int)中创建对话框. 当你使用这个回调函数时,Android系统自己主动管理每一个对话框的状态并将它们和Activity连接, 将Activity变为对话框的"全部者". 这样,每一个对话框从Activity继承一些属性.
2、 showDialog(int): 当你想要显示一个对话框时。调用showDialog(int id) 方法并传递一个唯一标识这个对话框的整数。当对话框第一次被请求时,Android从你的Activity中调用onCreateDialog(int id)。你应该在这里初始化这个对话框Dialog。这个回调方法被传以和showDialog(int id)同样的ID。当你创建这个对话框后,在Activity的最后返回这个对象。
3、 onPrepareDialog(int, Dialog):在对话框被显示之前,Android还调用了可选的回调函数onPrepareDialog(int id, Dialog). 假设你想在每一次对话框被打开时改变它的不论什么属性,你能够定义这种方法。
这种方法在每次打开对话框时被调用,而onCreateDialog(int) 仅在对话框第一次打开时被调用。假设你不定义onPrepareDialog(),那么这个对话框将保持和上次打开时一样。这种方法也被传递以对话框的ID。和在onCreateDialog()中创建的对话框对象。
4、 dismissDialog(int):当你准备关闭对话框时,你能够通过对这个对话框调用dismiss()来消除它。
假设须要,你还能够从这个Activity中调用dismissDialog(int id) 方法,这实际上将为你对这个对话框调用dismiss() 方法。
假设你想使用onCreateDialog(int id) 方法来管理你对话框的状态(就如同在前面的章节讨论的那样)。然后每次你的对话框消除的时候。这个对话框对象的状态将由该Activity保留。假设你决定不再须要这个对象或者清除该状态是重要的,那么你应该调用removeDialog(int
id)。这将删除不论什么内部对象引用并且假设这个对话框正在显示,它将被消除。
注意: 假设你希望在onCreateDialog()方法之外创建对话框, 它将不会依附在Activity上. 你能够使用setOwnerActivity(Activity)来将它依附在Activity上.
当你希望显示一个对话框时, 调用showDialog(int)并将对话框的id传给它.
当一个对话框第一次被请求时,Android调用onCreateDialog(int). 这里是你初始化对话框的地方. 这个回调函数传入的id和showDialog(int)同样. 创建对话框之后,将返回被创建的对象.
android对话框(Dialog)的使用方法的更多相关文章
- Android 对话框(Dialog)大全 建立你自己的对话框
Android 对话框(Dialog)大全 建立你自己的对话框 原文地址: http://www.cnblogs.com/salam/archive/2010/11/15/1877512.html A ...
- 转 Android 对话框(Dialog)大全 建立你自己的对话框
Activities提供了一种方便管理的创建.保存.回复的对话框机制,例如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog( ...
- Android 对话框(Dialog)大全
转自: http://www.cnblogs.com/salam/archive/2010/11/15/1877512.html Activities提供了一种方便管理的创建.保存.回复的对话框机制, ...
- Android 对话框(Dialog)
Activities提供了一种方便管理的创建.保存.回复的对话框机制,例如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog( ...
- Android 对话框(Dialog) 及 自己定义Dialog
Activities提供了一种方便管理的创建.保存.回复的对话框机制,比如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog( ...
- Android对话框(Dialog)
Android对话框 前几天出差没有进行更新,今天写一下安卓中用的比较多的对话框——AlertDialog. dialog就是一个在屏幕上弹出一个可以让用户做出一个选择,或者输入额外的信息的对话框,一 ...
- 少走弯路——Android对话框AlertDialog.Builder使用方法简述
android的自定义对话框,不需要通过继承的方式来实现,因为android已提供了相应的接口Dialog Builder ,下面就是 样例: new AlertDialog.Builder(this ...
- Android对话框Dialog深度剖析
对话框 对话框是提示用户作出决定或输入额外信息的小窗口. 对话框不会填充屏幕,通常用于需要用户采取行动才能继续执行的模式事件. 对话框设计 Dialog 类是对话框的基类,但您应该避免直接实例化 Di ...
- android 8种对话框(Dialog)使用方法汇总
1.写在前面 Android提供了丰富的Dialog函数,本文介绍最常用的8种对话框的使用方法,包括普通(包含提示消息和按钮).列表.单选.多选.等待.进度条.编辑.自定义等多种形式,将在第2部分介绍 ...
随机推荐
- Centos7 网络出错(failed to start LSB: Bring up/down networking )
这是我更换了VM虚拟机内存,重启后无法连接网络. 然后这是因为NetworkManager.service这个程序造成 解决方法: systemctl disable NetworkManager.s ...
- 目前常见的三种SQL分页方式:
--top not in方式 select top 条数 * from tablename where Id not in (select top 条数*页数 Id from tablename) - ...
- SQL函数_Floor和Celling
1 floor()函数用于获得小于或者等于数值表达式的最大整数,也就是向下取整;celling()函数用于获得大于或者等于数值表达式的最小整数,也就是向上取整: 2 floor()函数和round函数 ...
- 【Linux系统引导过程】
*** 第一步 开机自检 根据主板BIOS中的启动顺序,移交系统控制权. 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它. 这是因为BIO ...
- XTUOJ 1238 Segment Tree
Segment Tree Accepted : 3 Submit : 21Time Limit : 9000 MS Memory Limit : 65536 KB Problem Descriptio ...
- Java 学习(13):抽象类& 抽象方法& 封装
目录 --- 抽象类 --- 封装 抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的 ...
- 【LeetCode-面试算法经典-Java实现】【008-String to Integer (atoi) (字符串转成整数)】
[008-String to Integer (atoi) (字符串转成整数)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 Implement atoi to co ...
- 负载均衡(LB)具体解释
二.LB LoadBalance就是把负载均衡分配到集群的各个节点,从而提高总体的吞吐能力.Oracle 10g RAC提供了两种手段来实现负载,其一是通过Connection Balancing.依 ...
- java8新增特性(一)---Lambda表达式
Lambda表达式也成为闭包,是java语言层次上的改变,Lambda同意把函数作为一个方法的參数(函数作为參数传递进方法中),或者把代码看成数据.函数式程序猿对这一概念非常熟悉. 在JVM平台上有非 ...
- 在jsp页面中导入BootStrap中的文件
BootStrap应该放在项目的根目录下面 然后因为我的jsp页面跟html页面是写在HTML文件夹中,所以我路径的导入应该像下面的图一样,退回到上级目录再写路径.