Android MediaStyle NotificationCompat 最多显示 3 个操作
Android MediaStyle NotificationCompat displays 3 actions maximum
我的 NotificationCompat.Builder 设置为 MediaStyle 时遇到 2 个问题:
1) 我设置了5个动作,展开后的通知中只显示了3个。 (显示的前 3 个操作正常)。
2) None 虽然我设置了 1 个操作,但紧凑通知中显示了操作。
我正在 Lollipop 5.1.1 (Cyanogen) 上的三星 S4 上进行测试,我的应用程序使用支持库 23.2.1
下面是我的 NotificationCompat.Builder :
notificationBuilder = new NotificationCompat.Builder(act)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
.setCategory(NotificationCompat.CATEGORY_TRANSPORT)
.setContentTitle(podcastName)
.setContentText(episodeName)
.setOngoing(true)
.setShowWhen(true)
.setContentIntent(activityMainPI)
.setSmallIcon(smallIcon)
.setLargeIcon(largeIcon)
.setAutoCancel(false)
.addAction(previousAction)
.addAction(playAction)
.addAction(nextAction)
.addAction(rewindAction)
.addAction(forwardAction)
.setStyle(new MediaStyle()
.setShowActionsInCompactView(new int[]{1})
);
Eugen,请找第一个动作(其他类似):
previousPI = PendingIntent.getBroadcast(context, 100, new Intent(TOOLS_CONST.ACTION_PREVIOUS), 0);
previousAction = new NotificationCompat.Action.Builder(R.drawable.ic_action_previous_light, null, previousPI).build();
我找到了这个问题的原因。我使用了 v4 appcompat 支持库而不是 v7
所以替换:
import android.support.v4.app.NotificationCompat;
作者:
import android.support.v7.app.NotificationCompat;
已解决问题。
这也是我的另一个 媒体样式通知的原因。
我的 NotificationCompat.Builder 设置为 MediaStyle 时遇到 2 个问题:
1) 我设置了5个动作,展开后的通知中只显示了3个。 (显示的前 3 个操作正常)。
2) None 虽然我设置了 1 个操作,但紧凑通知中显示了操作。
我正在 Lollipop 5.1.1 (Cyanogen) 上的三星 S4 上进行测试,我的应用程序使用支持库 23.2.1
下面是我的 NotificationCompat.Builder :
notificationBuilder = new NotificationCompat.Builder(act)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
.setCategory(NotificationCompat.CATEGORY_TRANSPORT)
.setContentTitle(podcastName)
.setContentText(episodeName)
.setOngoing(true)
.setShowWhen(true)
.setContentIntent(activityMainPI)
.setSmallIcon(smallIcon)
.setLargeIcon(largeIcon)
.setAutoCancel(false)
.addAction(previousAction)
.addAction(playAction)
.addAction(nextAction)
.addAction(rewindAction)
.addAction(forwardAction)
.setStyle(new MediaStyle()
.setShowActionsInCompactView(new int[]{1})
);
Eugen,请找第一个动作(其他类似):
previousPI = PendingIntent.getBroadcast(context, 100, new Intent(TOOLS_CONST.ACTION_PREVIOUS), 0);
previousAction = new NotificationCompat.Action.Builder(R.drawable.ic_action_previous_light, null, previousPI).build();
我找到了这个问题的原因。我使用了 v4 appcompat 支持库而不是 v7
所以替换:
import android.support.v4.app.NotificationCompat;
作者:
import android.support.v7.app.NotificationCompat;
已解决问题。
这也是我的另一个