我想询问如何在通知栏中永久显示文字?
几秒后,setTicker()
方法设置的自动收报机就会消失。
我的目标是在通知栏中显示当前温度。这样做的最佳解决方案是什么?也许有一种方法可以将文本传递给setSmallIcon()
方法吗?
这是我的通知代码:
NotificationCompat.Builder notBuilder = new NotificationCompat.Builder(getApplicationContext());
notBuilder.setContentText("text");
notBuilder.setContentTitle("title");
notBuilder.setSmallIcon(android.R.color.transparent);
notBuilder.setTicker("ticker");
notBuilder.setOngoing(true);
int notID = 8;
NotificationManager nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
nm.notify(notID, notBuilder.build());
(是否有一个更好的解决方案来隐藏小图标?它以这种方式透明但仍然占据了这个位置)
提前致谢!
答案 0 :(得分:0)
将此标记设置为构建器notBuilder.setOngoing(true);
。这将永久显示通知,就图标而言,设置一个小的透明图像。
您可以尝试notBuilder.setSmallIcon(android.R.color.transparent);
答案 1 :(得分:0)
只能在状态栏中显示永久图标。自动收录器设置的文本不能是永久性的,并且只在第一次显示通知时出现一段时间。这是设计使然,因为用户通常不需要“隐藏”状态栏的永久消息。
要完全隐藏小图标,您可以将NotificationBuilder.setPriority(int)与标记Notification.PRIORITY_MIN一起使用。这样,通知将减少到最小,其中包括隐藏图标。但是这种方法仅适用于API 16+。在此级别下方,您可以设置transperent图标(您已经执行的操作),但图标的空间就像占位符一样,无法删除。也许这个answer对你的情况有帮助,但它只是将图标空间移动到另一个区域。