2016-12-11 25 views
1

我嘗試了每一個在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

u能請詳細說明.. ..怎麼做? –

回答

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

您需要自定義您的抽屜式導航欄查看你可以使用這個鏈接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> 
相關問題