Android Dev Guide -> User Interface

分类:Android 33人阅读 评论(0) 收藏 举报

Android 创建对话框

对话框是显示在当前的 Activity 前面的小窗口。位于后面的 Activity 失去焦点, 而由这个对话框处理用户的交互。

对话框常用于打断用户,执行小型的与当前程序有关的任务,例如显示进度条或登录窗口。

Dialog 类是所有对话框的基类,但是一般不去实例化Dialog类,而应该实例化下面这些Dialog子类:

AlertDialog 可构造大多数的UI,是最常使用的对话框。

ProgressDialog 用于显示进度的对话框,它是AlertDialog的子类

DatePickerDialog 用于选择日期

TimePickerDialog 用于选择时间

另外,可通过子类化Dialog,定义自己的对话框。

1、显示对话框(Showing a dialog)

对话框作为Activity的一部分,一般在Activity的 onCreateDialog(int) 回调方法中创建对话框。使用该回调方法创建完对话框

之后,Android系统会自动管理这些对话框的状态,并且使得Activity成为这些对话框的owner。这些对话框也会继承Activity的一些

性质。例如,Menu按键呼出来的菜单、音量调节功能。

注意:如果在onCreateDialog(int) 之外创建对话框,那么这个对话框是没有与Activity关联的。可用 setOwnerActivity(Activity)

建立关联。

调用 showDialog(int) 以显示对话框。

在对话框显示之后,Android 还可以调用 onPrepareDialog(int,Dialog) 。如果定义了该方法,在对话框每次显示都会调用该方法。

如果没有定义,则每次对话框都显示前面的状态。

注释:对话框的ID是我们自己定义的。例如 static final int DIALOG_MESSAGE_ID = 0;

static final int WUXIAO_DIALOG = 1;

2、关闭对话框(Dismissing a dialog)

调用 Dialog对象的 dismiss() 方法 或者 调用Activity类中的 dimissDialog(int) 来关闭对话框。(Activity的dismissDialog(int) 也是

调用Dialog对象的 dismiss() 方法。)

调用removeDialog(int) 将彻底销毁一个对话框(包括其内部状态)

3、关闭事件监听器(Using dimiss listeners)

如果你想在关闭对话框之后立即执行一些操作,可以用on-dismiss listeners。

首先implements DialogInterface.OnDismissListener 接口,覆盖其中的 onDismiss(DialogInterface) 方法。然后,对需要

监听的对话框对象调用 setOnDismissListener() 。(提示:这里跟UI事件的响应方法是一样的。都是监听器)。

注意:dismiss 和 cancel 的区别。一个对话框可以被 dismiss(关闭) 也可以被 cancel(取消)。比如按下后退按钮,则是cancel。cancel事件应该用DialogInterface.OnCancelListener接口 和setOnCancelListener()方法。

更多相关文章

  1. Android(安卓)ActionBar的源代码分析(二)
  2. Android5.1系统通过包名给应用开放系统权限的方法
  3. 为Android系统定制重启功能
  4. Android(安卓)MP4取得播放时长的方法
  5. Android(安卓)AOP(二):AspectJ在Android中实现Aop
  6. Android(安卓)使用【AIDL】调用外部服务
  7. 写给Android开发者的ThreadLocal介绍
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. 使用Eclipse运行项目的时候报Conversion
  2. Android(安卓)平板开发关闭一个Fragment
  3. Android(安卓)Intent.FLAG_ACTIVITY_NEW_
  4. [Android]Android权限列表
  5. android Java 提交数据到服务器的两种方
  6. Android(安卓)游戏开发必备的基础知识
  7. 关于如何高效率开发一个Android(安卓)App
  8. android intent相关
  9. 开关飞行模式
  10. android 启动自动调用自己创建的脚本(应用