我想将状态栏上的正在进行的事件图标放在第二个位置,就像Skype登录时一样。
答案 0 :(得分:1)
由于通知管理器管理通知,因此无法进行此操作。到达第一个位置的唯一方法是拥有一个服务并致电startForeground() - 但如果其他服务已经完成相同的操作,那么您的通知将位于第二个位置。
除此之外,没有其他方式可以影响这个位置。如果您首先创建通知,那么您就是第一位的。如果另一个应用程序首先创建通知,那么您就是第二个。
答案 1 :(得分:1)
所以我去谷歌搜索这个答案,我在惊人的StackOverflow上找到了这个问题。虽然Notification.priority = Notification.PRIORITY_MIN
适用于API 16及更高版本,但执行
Notification.when = 0
非常适合API< 16。
答案 2 :(得分:0)
http://grail.cba.csuohio.edu/~matos/notes/cis-493/lecture-notes/Android-Chapter23-Notifications.pdf
是一份很棒的文件!
查看示例:
制作通知。允许用户单击通知 小组并执行适当的活动以参加消息。
很抱歉只发布链接。但是,我相信这也会有所帮助: Display status bar notification from service in android
答案 3 :(得分:0)
设置通知时,只需将.when字段设置为Integer.MIN或Integer.MAX,分别在最左侧或最右侧显示通知。
图标按此字段排序,包括所有版本的Android up-to ICS。
在JB(4.1)上,您需要设置通知优先级以使其在左侧或右侧:
右侧的notification.priority = PRIORITY_MIN notification.priority =左侧的PRIORITY_MAX
编辑:在平板电脑上,如果您使用Notification.FLAG_FOREGROUND_SERVICE或startForeground,图标将位于右侧,我尝试将其向左移动的所有内容都不起作用(在ICS上测试过)。