Как показать оригинальный цвет значка в навигационном ящике Android?

#android #android-layout #navigation-drawer #android-menu

#Android #android-макет #навигация-ящик #android-меню

Вопрос:

Я создал новый проект Android Studio и выбрал действие навигационного ящика

В activity_main_drawer.xml Я изменил путь к значку на файл в папке drawable, как показано ниже

 <item
    android:id="@ id/nav_camera"
    android:icon="@drawable/nav_logo_premium"
    android:title="Import" />
  

Он изменил значок. но он не показывает исходный цвет. Он отображается как цвет пепла, я думаю, мне нужно сменить тему. потратив несколько часов, я не смог найти решение.

Я действительно ценю любую помощь.

Поскольку я не менял код, я не прикрепил исходный код всех файлов здесь

Пожалуйста, смотрите прикрепленный скриншот скриншота

Ответ №1:

Принудительно NavigationView прекратить подкрашивать значки в MainActivity.java:

 NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setItemIconTintList(null);
  

Ответ №2:

Создайте подобный стиль в своем styles.xml

 <style name="drawStyle" parent="Widget.AppCompat.DrawerArrowToggle">
    <item name="color">@android:color/red</item>
</style>
  

Добавьте созданный стиль в свою основную тему, чтобы изменить цвет кнопки переключения.

 <item name="drawerArrowStyle">@style/drawStyle</item>
  

Если вы используете библиотеку поддержки дизайна, вы можете изменить цвета значков с помощью app:itemIconTint свойства:

 <android.support.design.widget.NavigationView
    android:id="@ id/navigation"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="left"
    android:fitsSystemWindows="true"
    android:theme="@style/AppTheme"
    app:headerLayout="@layout/header"
    app:itemIconTint="#f00"
    app:itemTextColor="#0f0"
    app:menu="@menu/left_menu" />
  

Комментарии:

1. Это не сработало .. он изменил цвет только значка 3 строки в левом верхнем углу

2. Пожалуйста, смотрите прикрепленный скриншот

3. Для этого используйте свойство app:itemIconTint.

Ответ №3:

Удалите android: fillColor=»#FF000000″ из V21/ic_menu_slideshow.xml ЕСЛИ ТАКОВЫЕ ИМЕЮТСЯ