Notification 通知栏的使用
来源:互联网 发布:避孕套用途知乎 编辑:程序博客网 时间:2024/06/05 07:23
详情请看郭林大神http://blog.csdn.net/guolin_blog/article/details/50945228
Notification,不同的android版本,都有比较大的调整,android7.0动作更大,那么问题来了,新版本的API无法兼容老系统的,这里V7包提供了一个NotificationCompat类帮我们解决了这个问题
贴一段触发通知栏的代码
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); NotificationCompat.Builder builder = new NotificationCompat.Builder(getApplicationContext()); Notification notification = builder .setContentTitle("通知栏标题") .setContentText("通知栏内容") .setWhen(System.currentTimeMillis()) .setSmallIcon(R.mipmap.ic_launcher) .setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher)) //.setColor(Color.parseColor("#ffffff")) 修改小圆圈的颜色 .build(); manager.notify(1,notification);
可以看到,这里只是把我们平时使用的Notification.Builder改成了NotificationCompat.Builder而已,其他用法都是一模一样的,这样我们的通知就具备各种Android版本的兼容性了。
我现在是将项目的targetSdkVersion指定成了21以下,即低于5.0系统。如果将targetSdkVersion指定成21或者更高的话,结果可能就不乐观了:
这到底是为什么呢?实际上,Android从5.0系统开始,对于通知栏图标的设计进行了修改。现在Google要求,所有应用程序的通知栏图标,应该只使用alpha图层来进行绘制,而不应该包括RGB图层。
说的好像很玄乎,什么叫作只使用alpha图层来进行绘制呢?其实通俗点来讲,就是让我们的通知栏图标不要带颜色就可以了。
恩?不带颜色!那图标还怎么设计?但这就不是我们程序员应该考虑的问题了,而是应该交给项目的UI设计师来想办法,但我们需要将这个设计需求清楚地告诉设计师,因为他们通常并不知道Google的各种标准和要求。
那么我们来参考一下别的程序都是怎么设计通知栏图标的,这是支付宝的通知栏图标:
那么怎样修改这个小圆圈的颜色呢?其实非常简单,只需要在NotificationCompat.Builder中再多连缀一个setColor()方法就可以了,如下所示:
Notification notification = builder
......
.setColor(Color.parseColor("#EAA935"))
.build();
0 0
- Notification通知栏的使用
- Notification通知栏的使用
- Notification 通知栏的使用
- Notification通知的使用
- 通知栏Notification使用
- android中通知栏notification的使用
- adnroid,notification通知栏的使用
- android通知栏(Notification)的使用
- android通知栏之Notification的使用
- Notification通知栏的基本使用
- Android--Notification通知栏的使用
- 通知栏notification的一些使用代码
- 通知栏(Notification)的基本使用
- 【Android】使用Notification实现状态通知栏的通知
- android通知(Notification)的使用
- android Notification(通知) 的使用
- Notification(通知)的简单使用
- Notification(通知)的使用简介
- mysql导入导出sql文件
- SSL证书(HTTPS)背后的加密算法
- srping框架中注解之总结列表:持续更新
- Struts2拦截器
- wamp下安装phpredis扩展
- Notification 通知栏的使用
- 课程练习三-1014-problem N
- 红帽64位下修改mysql 5.1密码
- Hadoop使用jar运行实例
- HDU 2015 偶数求和
- volatile与synchronized在Java单例模式中的应用
- 出现警告:implicit declaration of function
- numpy之矩阵
- jquery的$.each()的用法以及参数的实际意义