2
我使用Java代碼構建了NavigationView
,然後使用方法setItemTextAppearance(int resId)
設置文本樣式以使我的菜單項的文本保持特定的顏色和字體。但是這種方法不起作用。我的文字沒有改變。NavigationView.setItemTextAppearance()不工作
注意:所有其他方法工作的偉大,就像setItemTextColor()
,setItemBackground()
等
這裏是我的代碼:
mNavigationView = new NavigationView(context);
mNavigationView.setId(R.id.nav_view);
mNavigationView.setFitsSystemWindows(true);
// This method works great!
mNavigationView.setBackgroundColor(ContextCompat.getColor(context, R.color.colorPrimary));
// This too.
mNavigationView.setItemTextColor(ColorStateList.valueOf(ContextCompat.getColor(context, android.R.color.white)));
// This method is not working.
mNavigationView.setItemTextAppearance(R.style.MenuTextStyle);
這裏是我的風格代碼:
<style name="MenuTextStyle">
<item name="android:textSize">16sp</item>
<item name="android:fontFamily">sans-serif-medium</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">#ffffff</item>
<item name="android:lineSpacingExtra">0sp</item>
</style>
我嘗試這一個也。沒有工作:( –
@LuizFernandoSalvaterra,這個設置在我的機器上工作。 – azizbekian
嘗試在樣式中應用顏色並刪除 'navigationView.setItemTextColor(ColorStateList.valueOf(ContextCompat.getColor(context,android.R.color.holo_blue_bright )));''從你的java代碼 –