Ответ 1
ОБНОВЛЕНИЕ
При использовании версии поддержки библиотеки этого стиля уведомлений, т.е. NotificationCompat.MediaStyle
, существует кнопка setShowCancelButton()
.
Это добавит кнопку закрытия, но только в версиях до Lollipop, чтобы обойти ошибку с уведомлениями, которые нельзя отменить после отображения в качестве части службы переднего плана.
В Lollipop предпочтительным вариантом является просто возможность отклонить уведомление (когда аудио приостановлено) вместо того, чтобы создать пользовательскую кнопку.
OLD ANSWER
От взгляда на исходный код класса Notification.MediaStyle
кажется, что в стиле уведомлений MediaStyle в данный момент нет поддержки:
private RemoteViews makeMediaBigContentView() {
final int actionCount = Math.min(mBuilder.mActions.size(), MAX_MEDIA_BUTTONS);
RemoteViews big = mBuilder.applyStandardTemplate(getBigLayoutResource(actionCount),
false /* hasProgress */);
if (actionCount > 0) {
big.removeAllViews(com.android.internal.R.id.media_actions);
for (int i = 0; i < actionCount; i++) {
final RemoteViews button = generateMediaActionButton(mBuilder.mActions.get(i));
big.addView(com.android.internal.R.id.media_actions, button);
}
}
styleText(big);
hideRightIcon(big);
applyTopPadding(big);
big.setViewVisibility(android.R.id.progress, View.GONE);
return big;
}
Это соответствует макету, который он раздувает (notification_template_material_big_media
), который содержит:
- Макет для мультимедийного изображения.
- LinearLayout для трех текстовых строк.
- LinearLayout, в котором добавлены действия мультимедиа.
- ImageView для отображения разделительной линии между этими двумя.
но ничего больше.
Похоже, что кнопка закрытия на странице документации - это просто исполнение исполнителя (Google Play Музыка также не включает его).