0

Я добавил боковую панель (панель навигации) для моего приложения, которые в настоящее время выглядит следующим образом:Пользовательские вытяжке в боковой панели не правильный цвет

http://i.imgur.com/aQOnNY4.png

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

Это, кажется синим из-за ценности textColorSecondary в моем styles.xml:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="android:textColorPrimary">@color/dark_gray</item> 
    <item name="android:textColorSecondary">@color/blue</item> 
</style> 

Вот элементы списка для боковой панели:

<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <group android:checkableBehavior="single"> 
     <item android:title="Menu"> 
      <menu> 
       <item 
        android:icon="@drawable/ic_home_black_48dp" 
        android:title="One" 
        android:checked="true"/> 
       <item 
        android:icon="@drawable/ic_favorite_black_48dp" 
        android:title="Two" /> 
       <item 
        android:icon="@drawable/custom_icon" 
        android:title="Three" /> 
      </menu> 
     </item> 
    </group> 
</menu> 

Здесь вы custom_icon вытяжки используется в третьем пункт в перечне:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:id="@+id/circle_icon"> 
     <shape 
      xmlns:android="http://schemas.android.com/apk/res/android" 
      android:shape="oval"> 
      <solid 
       android:color="#ff0000" 
       /> 
      <size 
       android:width="20dp" 
       android:height="20dp" 
       /> 
     </shape> 
    </item> 

    <item 
     android:drawable="@drawable/ic_add_white" 
     android:adjustViewBounds="true" 
     android:scaleType="fitXY" 
     android:top="2dp" 
     android:right="2dp" 
     android:bottom="2dp" 
     android:left="2dp" 
     /> 

</layer-list> 

Как я могу предотвратить изменение цвета значка плюса на значение textColorSecondary и сохранить его первоначальный белый цвет?


В качестве дополнительного бокового вопроса, как я могу стиль врезки полностью (включая цвет текста подчиненного, цвет текста элемента списка, и т.д.)? Я не могу найти учебники в Интернете.

ответ

0

Я решил свой собственный вопрос.

Просто сделайте следующее:

NavigationView sidebar = (NavigationView) findViewById(R.id.sidebar); 
sidebar.setItemIconTintList(null); 
Смежные вопросы