弹出菜单子菜单标题颜色

popup menu submenu title color

我在我的应用程序中使用 PopUp Menu。我的弹出菜单中的一项具有三个子菜单,例如

  1. 设置为
    • 铃声
    • 通知
    • 报警
  2. 项目 2
  3. 项目 3

.

点击 "SetAs" 项目后,我只看到了三个子项目,没有别的。我使用的是旧版本的支持库,例如 v22v23,我不确定。但是当我在我的项目中将 android 支持库更新为 v7:25.4.0 时,我看到子菜单视图中显示了一个标题(SetAs)。

这是我的弹出菜单的屏幕截图:

现在我的问题是如何更改此标题的颜色?

我已使用以下代码以编程方式完成此操作:

在你打电话之前把这个写好 popup.show()

// Change PopupMenu subMenu title color
PopupMenu popup = new PopupMenu(activity, view);
Menu itemSetAs = popup.getMenu();
SubMenu s = itemSetAs.findItem(R.id.SetAs).getSubMenu();
SpannableString headerTitle = new SpannableString(itemSetAs.findItem(R.id.SetAs).getTitle());

// Change the color: 
headerTitle.setSpan(new ForegroundColorSpan(Color.YOUR_COLOR), 0, headerTitle.length(), 0);

// You can even change the size:
int textSize = getResources().getDimensionPixelSize(R.dimen.your_size);
headerTitle.setSpan(new AbsoluteSizeSpan(textSize), 0, headerTitle.length(), SPAN_INCLUSIVE_INCLUSIVE);

s.setHeaderTitle(headerTitle);

popup.show().