Notification
通知是应用向用户显示的消息提示,当发送通知时,通知将先以图标的形式显示在通知区域中。用户可以打开下拉通知栏查看通知的详细信息。 通知区域和下拉通知栏均是由系统控制的区域,用户可以随时查看。
通过本篇文章阅读,您将获取以下内容
- Notification 简介
- 通知的创建
- 通知的管理
- 简单的通知
- 可以 扩展的通知
- 通知中含下载进度条
- 通知中含媒体播放控件
- 自定义通知内容
欢迎关注微信公众号:程序员Android
公众号ID:ProgramAndroid
获取更多信息

我们不是牛逼的程序员,我们只是程序开发中的垫脚石。
我们不发送红包,我们只是红包的搬运工。
Notification 简介
通知在Android用户界面的一个重要部分,其使用方法请看以下内容:
Notification 继承关系如下:
java.lang.Object
↳
android.app.Notification
1.Notification 简介
通知是应用向用户显示的消息提示,当发送通知时,通知将先以图标的形式显示在通知区域中。用户可以打开下拉通知栏查看通知的详细信息。 通知区域和下拉通知栏均是由系统控制的区域,用户可以随时查看。


2.创建Notification 的方法
- 调用
NotificationCompat.Builder.build()
创建Notification
对象
- 调用
- 然后调用
NotificationManager.notify()
将Notification
对象传递给系统。
- 然后调用
Notification 对象必须包含以下内容:
- 小图标,由
setSmallIcon()
设置
- 小图标,由
- 标题,由
setContentTitle()
设置
- 标题,由
- 详细文本,由
setContentText()
设置
- 详细文本,由
通知可选内容
- 设置优先级
通知默认优先级为 PRIORITY_DEFAULT
0
Notification.Builder.setPriority()
5个级别可选(-2、-1、0、1、2)
通知优先级如下:
PRIORITY_LOW=-1
PRIORITY_MIN=-2
PRIORITY_DEFAULT = 0
PRIORITY_HIGH=1
PRIORITY_MAX=2
设置可以扩展样式
通过Notification.Builder.setStyle()
可以设置通知的样式。
点击通知启动Activity(PendingIntent)
通知中经常遇到,点击通知栏,打开 Activity
。

3. 通知的管理
- 更新通知
调用 NotificationManager.notify(ID)
发出带有通知ID
的通知,ID
相同,即可更新以前ID
发送的通知。
- 删除通知
创建时 调用了 setAutoCancel(true)
删除时候调用删除指定ID
NotificationManager.cancel(notificationId)
删除自己应用发的所有通知
Utils.mNotificationManager.cancelAll();
- 在通知中显示进度条
setProgress()
4. 简单的通知
- 实现效果

- 实现代码

5. 可以 扩展的通知
- 实现效果


- 实现代码

6. 通知中含下载进度条
- 实现效果


- 实现代码

7. 通知中含媒体播放控件
- 实现效果


- 实现代码

8. 自定义通知内容
- 实现效果

- 实现代码

自定View
布局如下:

实现自定义通知删除按钮事件实现

注意,广播是四大组件之一,需要在AndroidManfest.xml 中注册
注册方式如下:

至此,通知相关的内容已经完毕,
感谢您的阅读,谢谢!
欢迎关注微信公众号:程序员Android
公众号ID:ProgramAndroid
获取更多信息

我们不是牛逼的程序员,我们只是程序开发中的垫脚石。
我们不发送红包,我们只是红包的搬运工。

点击阅读原文,获取更多福利

网友评论