我想在溢出堆栈的菜单项上显示通知编号,以指示有x个可用更新。我知道你可以在菜单项上设置一个图标,但是我想在菜单项的右侧显示数字(Instabridge这样做表示热点索引已经更新)。我该如何解决这个问题?
答案 0 :(得分:1)
我认为你正在谈论的溢出堆栈是OverflowPopup。如果没有,这两个问题可以解决您的问题:Actionbar notification count icon (badge) like Google has和Add new item count to icon on button - Android。
对于弹出窗口,您可能希望为通知编号创建自定义菜单视图,因为库不支持此模式。 (可能有更好的方法。)
但是,创建自定义菜单视图有点复杂。这是我从阅读源代码中获得的,未经测试!
首先,您需要创建 MenuView.ItemView 并为其添加通知编号。您可以创建一个实现此界面的新视图,也可以使用android' s android.support.v7.internal.view.menu.ActionMenuItemView 。
然后,您需要使用自定义的 ActionMenuPresenter 来使用菜单视图。在 ActionMenuPresenter 中,您可以将构造函数的第二个参数更改为您的视图。
public ActionMenuPresenter(Context context) {
super(context, R.layout.abc_action_menu_layout, R.layout.abc_action_menu_item_layout);
}
或覆盖 BaseMenuPresenter.createItemView 方法。
最后,您需要使用工具栏连接 ActionMenuPresenter 。
请参阅源代码以获取更多详细信息。