В Android (на JB), как я могу добавить действие к настраиваемому расширенному уведомлению?

Я играл с новыми богатыми уведомлениями в Jelly Bean, и все работает, как и ожидалось, когда я настраивал новое уведомление с использованием шаблонов Notification.BigPictureStyle, Notification.BigTextStyle, или же Notification.InboxStyle, Я могу использовать Notification.Builder.addAction() метод, и кнопки действий отображаются в нижней части расширенного уведомления. Но когда я пытаюсь создать уведомление cutsom с помощью Notification.bigContentView, кнопки действий никогда не отображаются.

Просто чтобы уточнить, если я никогда не установить bigContentViewкнопки появляются. Но как только в этом поле будет установлен пользовательский объект RemoteViews, кнопки исчезнут.

У кого-нибудь есть идеи о том, почему это происходит?

2 ответа

Решение

Различные Big...Style строители создают свои bigContentView, Если вы хотите свой собственный bigContentViewВы должны добавить кнопки самостоятельно, возможно, изучив исходный код этих сборщиков и увидев, как они это делают.

Когда вы добавите свой собственный bigContentView, он заменит представление содержимого, созданное с помощью Notification.BigPictureStyle, Notification.BigTextStyle или Notification.InboxStyle. Как отмечает comonsware, вам нужно добавить кнопку самостоятельно, и это, создав собственный настраиваемый remoteView с кнопками, а затем добавить его как contentView.

Вы можете найти учебник о том, как сделать это здесь.

Другие вопросы по тегам