Android app:itemBackground属性不';I don’我没有按预期工作
我正在尝试为Android app:itemBackground属性不';I don’我没有按预期工作,android,material-design,navigationview,Android,Material Design,Navigationview,我正在尝试为导航视图创建一个自定义选择器,但没有效果。这是我的代码: <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_height="match_parent" android:layout_width="wrap_content" android:layout_gravity="start" android:fitsSys
导航视图
创建一个自定义选择器,但没有效果。这是我的代码:
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_height="match_parent"
android:layout_width="wrap_content"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header"
app:menu="@menu/drawer_view"
app:itemBackground="@drawable/state_list_drawer_background" />
我只能看到透明选择器,而不是自定义选择器。然后,我发现NavigationView
有一个限制,如文档所述:
NavigationView的itemBackground属性无法正确处理项目的选中状态:或者所有项目都高亮显示,或者没有一个项目高亮显示。这使得该属性对于大多数应用程序基本上不可用
但是,在某些应用程序上,开发人员可以设置自定义选择器,例如应用程序在黑暗主题上。我不知道他们怎么能做到
有人能帮我解决这个问题吗
提前感谢。请在上填写错误报告 我打赌tCurrent不会使用
NavigationView
来实现主菜单。我也没有,我发现创建自己的自定义布局更容易、更灵活。您必须在选择器中定义颜色,如下所示: 内部:drawable/item_selector.xml
<item android:color="#8C9EFF" android:state_checked="true" />
<!-- This is the default text color -->
<item android:color="#FFFFFF" />
尝试使用
app:itemIconTint=“@color/accent”app:itemTextColor=“#FFFFFF”
。我知道这不是你想要的,但mahbe它作为一个解决方案很有帮助。在com.android.support:design:22.2.1中标记为固定。我试过了,现在可以用了。
<item android:color="#8C9EFF" android:state_checked="true" />
<!-- This is the default text color -->
<item android:color="#FFFFFF" />