创建自己的NotificationStyle

时间:2014-09-21 17:48:42

标签: android android-notifications android-notification-bar

在我的Android应用程序中,我想创建一个消耗性通知。为此,我必须为这样的通知设置样式:

NotificationCompat.Builder builder = new NotificationCompat.Builder(this);

builder.setSmallIcon(android.R.drawable.ic_menu_info_details);
builder.setContentTitle("My notification");
builder.setContentText("Hello World!");

builder.setStyle(...);

Android为我提供了一些我可以使用此方法的样式,但我喜欢创建自己的样式,因此我可以在通知中加载布局。那我该怎么做呢?如果我创建Style的子类,则只有这两种方法:

public Notification build();
public void setBuilder(Builder builder);

那么如何在通知中加载我自己的布局? builder.setContent对我来说不够,因为我只有64dp的布局。

1 个答案:

答案 0 :(得分:0)

找到解决此问题的方法。这真的很容易。只需在此处使用此代码:

String packageName = this.getPackageName();
RemoteViews bigView = new RemoteViews(packageName, R.layout.test);

NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setSmallIcon(android.R.drawable.ic_menu_info_details);
builder.setContentTitle("My notification");
builder.setContentText("Hello World!");

Notification noti = builder.build();
noti.bigContentView = bigView;

NotificationManager mgr = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
mgr.notify(1234, noti);