У меня проблема с изменением заголовка пункта меню Color
в Navigation Drawer
. Я установил itemTextColor
, но он изменяет только Color
элементов, а не Title
меню.
Вот мой Activity_main.xml
activity_main_drawer.xml
С NavigationView
включенный в Материальная Библиотека Компонентов можно использовать app:itemTextColor
для определения цвета или селектора и app:itemTextAppearance
, если Вы хотите настроить используемый TextAppearance.
<com.google.android.material.navigation.NavigationView
app:itemTextColor="@color/colorPrimaryDark"
app:itemTextAppearance="@style/...."
...>
Для цвета можно использовать селектор как:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="?attr/colorPrimary" android:state_checked="true"/>
<item android:alpha="0.38" android:color="?attr/colorOnSurface" android:state_enabled="false"/>
<item android:color="?attr/colorOnSurface"/>
</selector>
Для любого, кто может наткнуться на этот вопрос и не найти рабочий ответ как я, добавьте <item name="android:textColorSecondary">@color/white</item>
внутренняя часть Ваш AppTheme
и AppTheme.NoActionBar
файл styles.xml как это:
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColorSecondary">@color/white</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:textColorSecondary">@color/white</item>
</style>
...
</resources>
Это должно произвести что-то вроде этого:
Примечание: я сделал текст элемента "Доля" или "Отправляю" белый путем добавления app:itemTextColor="@color/white"
внутренняя часть NavigationView
. Полный код NavigationView:
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:itemTextColor="@color/white"
android:background="#283135"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer"/>