对话框 Original Version
开发者文档
Dialogs
应用通过对话框让用户作出决定或者填写一些信息,以完成任务。对话框的形式可以是简单的 取消/确定 或者是复杂一点的比如调整设置或者输入文字。

-
1. 可选的标题区
标题提示用户对话框的内容。例如用户正在调整的设置名称。
-
2. 内容区
对话框的内容多种多样。例如设置对话框,它使用了多种 UI 控件,包括各种按钮、滑块和文本框,通过它们来调整应用或者系统的设置。另外,对于警告对话框,它一般包含了用户所作出决定的进一步信息。
-
3. 操作按钮
操作按钮一般是取消/确定。确定一般是默认的操作。如果选项中包括了关闭等待等非确定操作,请在按钮上使用主动动词。一般的规则是将否定操作放在左边,确定操作放在右边。

Android 中几种典型的对话框用例。
警告对话框
警告对话框用于在执行下一步操作前请求用户确认或者提示用户当前的状态。由于内容的不同,警告对话框的布局会有些不同。

没有标题栏的警告对话框
大多数警告对话框不需要标题栏。因为通常情况下很难通过一两句话说明白。内容区应当是一个问句 (例如“删除该会话?”) 或者是一个与操作明显相关的陈述句。

有标题栏的警告对话框
谨慎的使用带有标题栏的警告对话框。仅在有可能引起数据丢失、连接断开、收费等高风险的操作时才使用。并且标题应当是一个明确的问题,内容区提供一些解释。
保持问题和解释简短明确: 例如“擦除 USB 存储设备?”不要使用道歉语句。用户应当能够不看内容,只通过标题和下面的操作按钮做出决定。
不要这样做
Are you sure? |
不要这样做
Warning! |
应当这么做
Erase USB storage? |
你确定么? |
警告! |
擦除 USB 存储设备? |
弹出对话框
弹出对话框是一种轻量级的对话框,一般只让用户做出一个选择。弹出对话框不使用确定或取消按钮,而是让用户通过简单的触摸,在整个工作流中做出选择。

Toasts
