The new 导航视图在新的设计支持库效果真的很棒。
他们使用 ”菜单项” 显示选项。
但我怎样才能显示counter to the right菜单项的?
就像这张照片中一样:
或者像在GMail app.
从 appcompat-v7 版本 23 开始NavigationView
支持动作视图,因此很容易自己实现counter。
-
创建柜台布局,即menu_counter.xml
:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:textAppearance="@style/TextAppearance.AppCompat.Body2" />
-
在抽屉菜单 xml 中引用它,即menu/drawer.xml
:
<item
...
app:actionLayout="@layout/menu_counter" />
请注意,您应该使用app
命名空间,不要尝试使用android
.
或者,您可以手动设置操作视图MenuItem.setActionView()
method.
-
找到菜单项并设置计数器:
private void setMenuCounter(@IdRes int itemId, int count) {
TextView view = (TextView) navigationView.getMenu().findItem(itemId).getActionView();
view.setText(count > 0 ? String.valueOf(count) : null);
}
请注意,您将需要使用菜单项兼容如果你必须支持Android 2.x版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)