在开发中我的ActionBar右边经常要加一个文本按钮,颜色是系统或全局设定的。现在我们只想改变部分页面的,而不是全局更改。我知道的有两种方法,如大家有更好的方法请分享谢谢!
1.使用Html类。代码简单,但耦合度高,不方便维护
2.使用SpannableString。耦合底,维护方便
代码如下
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_evaluat, menu);
MenuItem item = menu.findItem(R.id.action_product);
//方法1
item.setTitle(Html.fromHtml("<font color='#4288FF'>下一步</font>"));
//方法2
SpannableString spannableString = new SpannableString(item.getTitle());
spannableString.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.color_main)), 0, spannableString.length(), 0);
item.setTitle(spannableString);
return super.onCreateOptionsMenu(menu);
}
网友评论