2017-08-14 43 views
0

喜的朋友我想改變,菜單項文本的顏色我已經嘗試了本菜單項文本顏色以編程方式更改不起作用?

@Override 
public boolean onPrepareOptionsMenu(Menu menu) { 
MenuItem settingsMenuItem = menu.findItem(R.id.newfield); 
SpannableString s = new SpannableString(settingsMenuItem.getTitle()); 
s.setSpan(new ForegroundColorSpan(Color.parseColor("#00FFBB")), 0, s.length(), 0); 
settingsMenuItem.setTitle(s); 
return super.onPrepareOptionsMenu(menu); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.feedbackaddnew, menu); 

    return true; 
} 

但顏色沒有改變

+0

加入這一行你的主題<項目名稱= 「機器人:actionMenuTextColor」> @色/ your_color –

+0

嗨sowmya,你可以檢查我的答案。 – KeLiuyue

回答

0

你可以試試這個。

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.feedbackaddnew, menu); 
    MenuItem settingsMenuItem = menu.findItem(R.id.newfield); 
    SpannableString s = new SpannableString(settingsMenuItem.getTitle()); 
    s.setSpan(new ForegroundColorSpan(Color.parseColor("#00FFBB")), 0, s.length(), 0); 
    settingsMenuItem.setTitle(s); 
    return super.onCreateOptionsMenu(menu); 
} 

只是在onCreateOptionsMenu()方法。

+0

謝謝你會嘗試你的文章和分享 – saiRam89

0

你可以通過改變風格菜單文本顏色

試試這個:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">  
<item name="actionMenuTextColor">@color/text_color</item> 
<item name="android:actionMenuTextColor">@color/white</item> 
</style> 
0

你可以試試這個,當onPrepareOptionsMenu呼籲,如果我們嘗試更新它不更新可能是因爲角度不完全呈現,所以我增加了100毫秒的延遲,並更新其工作正常。

@Override 
public boolean onPrepareOptionsMenu(final Menu menu) { 

    new Handler().postDelayed(new Runnable() { 
     @Override 
     public void run() { 

      View view = findViewById(R.id. newfield); 

      // Cast to a TextView instance if the menu item was found 
      if (view != null && view instanceof TextView) { 
       ((TextView) view).setTextColor(Color.parseColor("#00FFBB")); 
      } 
     } 
    }, 100); 

    return true; 
} 

注:

我們正在做後期延遲,所以它會在此之前,如果我們關閉應用程序 菜單爲空就會死機,所以最好嘗試活動之前撤銷可運行 破壞。

+0

謝謝我沒有在菜單中使用TextView – saiRam89

+0

你不使用,但MenuItem是TextView,你可以改變像這樣的屬性。 –

+0

只要給你的身份證,並檢查。 –

相關問題