Notification在状态栏的显示 (简述)

本文详细介绍了在不同API级别下如何使用安卓系统的通知栏功能。包括构造通知对象、设置图标和文字,以及如何通过Builder模式创建更复杂的通知内容。

首先要搞明白手机顶部的那个条叫状态栏(status bar),下拉后,那一片叫 扩展状态栏(expanded status bar)。

1.第一种使用方法(API LEVEL 11以下使用这种方式(不包含11))。区别api级别是因为,一些方法已经过时。

/*构造函数 Notification(int a,String b,long c)
  *a 在状态栏上显示的图标id。 
  *b 在状态栏上显示的文字。
  *c  在扩展状态栏上显示的通知产生(接收)的时间所用的时间戳.(一般采用 System.currentTimeMillis())
*/
Notification notification=new Notification(R.drawable.ic_launcher,"好久不见",System.currentTimeMillis());
 
//无参构造函数 
Notification notification=new Notification();
notification.icon=R.drawable.ic_launcher;//状态栏上显示的图标
notification.tickerText="好久不见";//状态栏上显示的文字
notification.when=System.currentTimeMillis();//在扩展状态栏上显示的通知产生(接收)的时间所用的时间戳

 上面两种方式等价。

上面两种方式设置了状态栏上显示的东西,下面要设置扩展状态栏上显示的东西。

notification.setLatestEventInfo(Context a,String b, String c, PendingIntent intent);
第一个参数是上下文
第二个是扩展状态栏上第一行显示的文字 也叫contentTitle
第三个是扩展状态栏上第二航显示的文字 也叫conTentText
第四个是点击扩展状态栏时 要跳转的页面
第四个参数一般这样设置。
Intent intent=new Intent(context,Simple.class);
intent.addFlags(Context.FLAG_ACTIVITY_NEW_TASK);
PendingIntent intent=PendingIntent.getActivity(context,0,intent,0);

 2.第二种使用方法(API LEVEL 11 以上(包含11))

Notification.Builder builder=new Notification.Builder(context);
builder.setSmacllIcon(R.drawable.ic_launcher);//设置扩展状态栏的图标
builder.setContentTile("你好");//扩展状态栏第一行文字
builder.setContentText("好久不见");//扩展状态栏第二行文字
Notification notification=builder.build();//以上内容必须在build()函数调用之前设置,不然没效果。
notification.icon=R.drawable.ic_launcher;//状态栏图标
notification.tickerText="新通知";//状态栏文字
notification.when=System.currentTimeMillis();//所用时间戳

 然后notificationManager.notify(110,notification);  即可显示。

 

 

转载于:https://www.cnblogs.com/answer1022/p/3586831.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值