gpt4 book ai didi

未显示包含许多操作的 Android 通知

转载 作者:行者123 更新时间:2023-11-29 15:42:32 24 4
gpt4 key购买 nike

我正在尝试显示包含 3 个以上操作的通知。不幸的是,第四个 Action 等没有显示(可能是因为没有足够的空间)。此外,操作项的宽度不同。

enter image description here

有谁知道如何显示超过 3 个操作?

这是我的代码:

final NotificationCompat.InboxStyle inboxStyle = new NotificationCompat.InboxStyle();
inboxStyle.setBigContentTitle(message.getData().get(DATA_TITLE));
inboxStyle.addLine(message.getData().get(DATA_BODY));

final NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_notification)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher))
.setContentTitle(message.getData().get(DATA_TITLE))
.setContentText(message.getData().get(DATA_BODY))
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setStyle(inboxStyle)
.setContentIntent(defaultIntent)
.setPriority(Notification.PRIORITY_MAX);

addActions(notificationBuilder, message);

private void addActions(final NotificationCompat.Builder builder, final RemoteMessage message) {
if (containsAction(message, EventActionType.OpenMessage)) {
builder.addAction(R.drawable.ic_email, "open", getActionIntent(message, MyActivity.class));
}
if (containsAction(message, EventActionType.Details)) {
builder.addAction(R.drawable.ic_notification_account, "details", getActionIntent(message, MyActivity.class));
}
if (containsAction(message, EventActionType.Transfer)) {
builder.addAction(R.drawable.ic_access_time, "transfer", getActionIntent(message, MyActivity.class));
}

最佳答案

link可以帮你。根据 android 的标准文档,我们不能有超过三个通知操作。
如果你想拥有三个以上的 Action ,你可以使用 remoteViews。每个通知都会有一个由 android 操作系统提供的默认 View ,但我们可以自定义它。为此,我们需要创建一个布局,将用作我们的通知 View ,并在该布局中使用任意数量的按钮,但布局的高度是有限的,因为通知高度受 android 的限制。确保所有按钮将适合通知。使用此布局创建一个 remoteViews

之后,当您创建通知时,使用 setCustomContentView 将其附加到通知。对于 View 中的每个按钮,您可以有不同的 pendingintent,即点击不同的按钮可以执行不同的 pending intent。参见 RemoteView.setOnClickPendingIntent(view,pendingIntent)

快乐编码;-)

关于未显示包含许多操作的 Android 通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38170977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com