我試圖動態更改菜單項文本顏色。Android更改菜單項動態文本顏色
我有一個菜單圖標有效的解決方案,它採用了彩色濾光片如下:
Drawable drawable = menuItem.getIcon();
if (drawable != null) {
drawable.mutate();
drawable.setColorFilter(new
PorterDuffColorFilter(Color.parseColor(color), PorterDuff.Mode.MULTIPLY));
}
menuItem.setIcon(drawable);
我無法改變,菜單項文本的顏色。爲了使這項工作我用下面的代碼:
SpannableString s = new SpannableString(menuItem.getTitle());
s.setSpan(new ForegroundColorSpan(Color.parseColor(color)), 0, s.length(), 0);
menuItem.setTitle(s);
「SAVE」的顏色是什麼,我試圖改變。
任何人都可以幫我解決這個問題嗎?
有沒有辦法從java代碼中指定文本顏色,而不是在XML中指定它? 例如,我在style/XML中指定actionMenuTextColor = white,並且希望在運行時將其更改爲RED。怎麼做? –
檢查上面的代碼 –
欲如下所示改變的活動,「保存」菜單項的顏色: '@覆蓋 公共布爾onCreateOptionsMenu(菜單菜單){ MenuInflater menuInflater = getMenuInflater(); menuInflater.inflate(R.menu.menu_done,menu); MenuItem saveMenuItem = menu.findItem(R.id.action_done); //我要更改saveMenuItem文本 return super.onCreateOptionsMenu(menu); }' –