Android 材质设计导航抽屉项目选定样式
下午, 我试图找到答案,但似乎没有任何直接的解释,我希望应该是非常简单的事情 我刚刚开始使用material design导航抽屉,需要更改抽屉中选定项目的背景颜色Android 材质设计导航抽屉项目选定样式,android,material-design,Android,Material Design,下午, 我试图找到答案,但似乎没有任何直接的解释,我希望应该是非常简单的事情 我刚刚开始使用material design导航抽屉,需要更改抽屉中选定项目的背景颜色 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"&g
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/item_1"
android:icon="@drawable/item1"
android:title="Item 1" />
<item
android:id="@+id/item_2"
android:icon="@drawable/item2"
android:title="Item 2" />
<item
android:id="@+id/item_3"
android:icon="@drawable/item3"
android:title="Item 3" />
</group>
这是抽屉中项目的代码
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/item_1"
android:icon="@drawable/item1"
android:title="Item 1" />
<item
android:id="@+id/item_2"
android:icon="@drawable/item2"
android:title="Item 2" />
<item
android:id="@+id/item_3"
android:icon="@drawable/item3"
android:title="Item 3" />
</group>
我的mainActivityXML中有以下内容
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:background="#202020"
app:itemTextColor="@android:color/white"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
我已经用背景和文本颜色管理了抽屉的样式,但如上所述,我现在需要更改所选项目的背景颜色
任何帮助都将不胜感激 您必须为未选中的项目设置抽屉中的项目
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/item_1"
android:checked="false"
android:icon="@drawable/item1"
android:title="Item 1" />
<item
android:id="@+id/item_2"
android:checked="false"
android:icon="@drawable/item2"
android:title="Item 2" />
<item
android:id="@+id/item_3"
android:checked="false"
android:icon="@drawable/item3"
android:title="Item 3" />
</group>
您必须为未选中的项目设置抽屉中的项目
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/item_1"
android:checked="false"
android:icon="@drawable/item1"
android:title="Item 1" />
<item
android:id="@+id/item_2"
android:checked="false"
android:icon="@drawable/item2"
android:title="Item 2" />
<item
android:id="@+id/item_3"
android:checked="false"
android:icon="@drawable/item3"
android:title="Item 3" />
</group>
将新样式添加到styles.xml:
res/values/styles.xml
将新样式添加到styles.xml:
res/values/styles.xml
我选择了正确的项目,但找不到更改所选项目背景颜色的方法。现在它是黑色的,我需要把它换成蓝色。不确定这是不是答案?这对我很有效。在setChecked(true)上,它根据使用主题的应用程序设置选定的背景项目颜色,因此尝试更改主题颜色这是我正在尝试解决的问题,我需要指定主题的哪一位颜色?原色不起作用?在这种情况下,您必须设置导航抽屉的自定义主题,如#2AF2A,然后只需在导航抽屉应用程序中设置主题:theme=“@style/NavigationStyle”我选择了正确的项目,但我找不到更改所选项目背景颜色的方法。现在它是黑色的,我需要把它换成蓝色。不确定这是不是答案?这对我很有效。在setChecked(true)上,它根据使用主题的应用程序设置选定的背景项目颜色,因此尝试更改主题颜色这是我正在尝试解决的问题,我需要指定主题的哪一位颜色?原色不起作用?在这种情况下,您必须设置导航抽屉的自定义主题,如#2AF2A,然后只需在导航抽屉应用程序中设置主题即可:theme=“@style/NavigationStyle”完美,正是我想要的!我花了一个小时左右的时间试图在文档中找到这个,谢谢,非常感谢。太好了,正是我想要的!我花了一个小时左右的时间试图在文档中找到这个,所以谢谢,非常感谢。
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer"
app:theme="@style/TextAppearance" />