gpt4 book ai didi

android - 如何以编程方式更改 ActionBar 菜单项文本颜色?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:09:34 27 4
gpt4 key购买 nike

我有一个包含多个项目的 actionBar,我想在单击项目时更改文本的颜色。无论如何以编程方式执行此操作?请提供示例或任何资源。

谢谢

  public void catalogClick(MenuItem item){
//highlight menuitem etc.

}

最佳答案

要在不定义样式资源的情况下进行更改,我们可以使用 SpannableString。

    @Override
public boolean onPrepareOptionsMenu(Menu menu) {
//To style first menu item
MenuItem menuItem = menu.getItem(0);
CharSequence menuTitle = menuItem.getTitle();
SpannableString styledMenuTitle = new SpannableString(menuTitle);
styledMenuTitle.setSpan(new ForegroundColorSpan(Color.parseColor("#00FFBB")), 0, menuTitle.length(), 0);
menuItem.setTitle(styledMenuTitle);

return super.onPrepareOptionsMenu(menu);
}

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {

Toast.makeText(this, item.getTitle() + " clicked!", Toast.LENGTH_LONG).show();
return true;
}

当你格式化文本样式时,你会得到“无效的负载项类型”异常。为避免这种情况,请覆盖 onMenuItemSelected,并使用 return true 或 false。

引用:

Android: java.lang.IllegalArgumentException: Invalid payload item type

http://vardhan-justlikethat.blogspot.in/2013/02/solution-invalid-payload-item-type.html

关于android - 如何以编程方式更改 ActionBar 菜单项文本颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9895472/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com