通知用户 Notifying the User
某些情况下需要通知用户你的应用程序中发生了一个事件。一些事件请求用户应答而另外一些则不需要。比如:
· 当一个事件比如保存文件结束时,应该出现一条消息确认保存成功。
· 如果一个后台运行的应用程序需要用户关注,这个应用程序应该创建一个通知来允许用户在方便时进行应答。
· 如果这个应用程序在执行一个用户必须等待的任务(比如家在一个文件),那么应用程序应该显示一个盘旋的进度轮或进度条。
所有这些通知任务可以通过一个不同的技术获取到:
· 一个消息条通知 Toast Notification , 用于从后台出现的简短信息。 for brief messages that come from the background.
· 一个状态条通知 A Status Bar Notification , 用于来自后台的持续提醒并请求用户应答。
· 一个对话框通知 A Dialog Notification , 用于活动相关的通知。
这篇文档总结了用来通知用户的所有这些技术并包含相应的链接。
消息条通知 Toast Notification
一个消息条通知是一个在窗口表面弹出的信息。它只填充内容所需的空间并且用户当前活动仍然保持可见和可交互。这个通知自动渐入渐出,而且不接受交互事件。因为消息条可以从一个后台服务 Service 中创建,即便应用程序不可见,它也将呈现出来。
一个消息条是用来显示简短文本信息的最好方法,比如 “ 文件已保存 ” ,当你很确信用户正在关注屏幕时。一个消息条不能接受用户交互事件;如果你希望用户应答并采取相应动作,请考虑使用一个状态条通知 Status Bar Notification 。
更多信息,请参考创建消息条通知 Creating Toast Notifications .
状态条通知 Status Bar Notification
一个状态条通知添加一个图标到系统状态栏上(以及一个可选的滚动条文本信息)以及在这个 “ 通知 ” 窗口中的一个扩展消息。当用户选择这个扩展消息时, Android 发出这个通知所定义的一个意图(通常是启动一个活动)。你也可以配置这个通知来通过一个声音,震动和设备上的闪烁灯来警告用户。
当你的应用程序以后台服务运行并需要通知用户事件时,这类通知是一个理想的方式。如果你需要在活动仍处于焦点下时警告用户一个发生的事件,请考虑使用对话框通知 Dialog Notification 。
更多信息,请参考创建状态条通知 Creating Status Bar Notifications 。
对话框通知 Dialog Notification
一个对话框通常是出现在当前活动前面的一个小窗口。背后的活动丢失焦点而由这个对话框接受所有的用户交互。对话框通常用做和运行中应用程序直接相关的通知和短暂活动。
你应该使用对话框来显示一个进度条或者一个需要用户确认的短消息(比如带有 “ 确认 ” 和 “ 取消 ” 按钮的一个警告)。你也可以把对话框作为构成应用程序界面整体的组件以及用于除了通知之外的其它目的。要完整讨论所有可用对话框资源,包括用作通知,请参考创建对话框 Creating Dialogs 。