Jelly Bean中的自定义可扩展通知(4.1)

时间:2012-09-12 04:42:20

标签: android android-notifications android-4.2-jelly-bean

Jelly Bean添加了对可扩展状态通知的支持。根据{{​​3}}:

  

除模板样式外,您还可以创建自己的样式   使用任何远程视图的通知样式。

怎么做?我相信你需要创建一个自定义http://developer.android.com/about/versions/jelly-bean.html。这是一个抽象类,所以我需要扩展它。我无法找到有关哪些部分需要扩展的文档。

这个Notification.Style给出了如何使用notificaiton.builder进行基本通知的一个很好的例子,我将此作为起点。添加

.setContent(new RemoteViews(getPackageName(), R.layout.notification)) 

为基本通知添加自定义视图,但它不可扩展。

2 个答案:

答案 0 :(得分:26)

您需要创建自己的RemoteViews,然后表明您希望展开的内容继承自定义RemoteViews

 RemoteViews expandedView = new RemoteViews(YOUR CONTEXT.getPackageName(), YOUR CUSTOM LAYOUT);
 Notification notification = mBuilder.build();
 notification.bigContentView = expandedView;

请注意bigContentView是您正在寻找的。 mBuilderNotification.Builder个对象。

答案 1 :(得分:13)

有关于如何操作以及如何创建自己的布局的好教程here

enter image description here

基本上,您需要使用布局创建remoteView,然后在Notification对象中将其设置为bigContentView。顺便说一下,请确保您还添加了reguler contentView,因为在某些情况下操作系统将使用较小的contentView。