2016-12-11 15 views
1

Я пробовал alomst каждую ссылку на stackoverflow, но я не мог найти правильное решение для моего вопроса. Я пробовал это ...Как изменить цвет текста определенного элемента в режиме навигации?

<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:itemTextColor="#fff" 
    app:itemIconTint="#fff" 
    android:background="#393737" 
    app:headerLayout="@layout/nav_header_navigation" 
    app:menu="@menu/activity_navigation_drawer"/> 

Но его изменение цвета текста каждого элемента. Есть ли способ изменить цвет текста одного элемента? Я говорю об изменении цвета текста конкретного элемента, т.е. если у нас есть четыре элемента

  • сахар
  • хлеб
  • молоко
  • яйцо

Этот список встраивается в меню навигации Посмотреть. Если мы хотим изменить цвет молока на красный. Как это сделать??

+0

может у пожалуйста, подробно .. ..как это сделать? –

ответ

0

Вам необходимо сделать это программно.

// Get the navigation view first. 
mNavigationView = (NavigationView) findViewById(R.id.nav_view); 

Теперь вам нужно получить пункт меню из режима навигации и установить здесь значок.

// Get the index of milk 
mNavigationView.getMenu().getItem(INDEX_OF_MILK).setIcon(R.drawable.milk_red); 

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

if(milkIsRed) 
    mNavigationView.getMenu().getItem(INDEX_OF_MILK).setIcon(R.drawable.milk_red); 
else 
    mNavigationView.getMenu().getItem(INDEX_OF_MILK).setIcon(R.drawable.milk_white); 
+0

Оригинальный вопрос был о цветном тексте, а не цветном значке. –

0

Вам нужно настроить панель навигации View для этого вы можете использовать эту ссылку http://www.androidhive.info/2013/11/android-sliding-menu-using-navigation-drawer/

XML выглядят подобно

<group android:checkableBehavior="single"> 
    <item 
     android:id="@+id/nav_home" 
     android:icon="@drawable/ic_home_black_24dp" 
     android:title="@string/nav_home" /> 
    <item 
     android:id="@+id/nav_photos" 
     android:icon="@drawable/ic_photo_library_black_24dp" 
     android:title="@string/nav_photos" /> 
    <item 
     android:id="@+id/nav_movies" 
     android:icon="@drawable/ic_local_movies_black_24dp" 
     android:title="@string/nav_movies" /> 

    <item 
     android:id="@+id/nav_notifications" 
     android:icon="@drawable/ic_notifications_black_24dp" 
     android:title="@string/nav_notifications" /> 

    <item 
     android:id="@+id/nav_settings" 
     android:icon="@drawable/ic_settings_black_24dp" 
     android:title="@string/nav_settings" /> 
</group>