Jelly Bean添加了对可扩展状态通知的支持。据http://developer.android.com/about/versions/jelly-bean.html说:
除了模板化样式,您还可以使用任何远程视图创建自己的通知样式。
怎么办?我相信你需要创建一个自定义Notification.Style。这是一个抽象类,所以我需要扩展它。我无法找到有关哪些部分需要扩展的文档。
这个qazxsw poi给出了如何使用notificaiton.builder进行基本通知的一个很好的例子,我将此作为起点。添加
SO question
为基本通知添加自定义视图,但它不可扩展。
您需要创建自己的.setContent(new RemoteViews(getPackageName(), R.layout.notification))
,然后表明您希望扩展的内容继承您的自定义RemoteViews
。
RemoteViews
请注意, RemoteViews expandedView = new RemoteViews(YOUR CONTEXT.getPackageName(), YOUR CUSTOM LAYOUT);
Notification notification = mBuilder.build();
notification.bigContentView = expandedView;
是您正在寻找的。 bigContentView
是一个mBuilder
对象。
有一个很好的教程Notification.Builder如何做到这一点以及如何创建自己的布局。
基本上,您需要使用布局创建remoteView,然后在Notification对象中将其设置为bigContentView。顺便说一下,请确保您还添加了reguler contentView,因为在某些情况下操作系统将使用较小的contentView。