Android 修改menu颜色

2019-12-05  本文已影响0人  APP福星高照

在开发中我的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);
    }
上一篇 下一篇

猜你喜欢

热点阅读