我想在导航抽屉中的android菜单中设置所有标题项的背景颜色。我的布局如下:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="TopItem" android:id="@+id/top_item1"> // Here i want to set the background
<menu>
<group>
<item android:id="@+id/sub_item1"
android:title="SubItem" /> // Here no background
</group>
</menu>
</item>
<item android:title="TopItem" android:id="@+id/top_item2">
<menu>
<group>
<item android:id="@+id/sub_item2"
android:title="SubItem" />
<item android:id="@+id/sub_item3"
android:title="SubItem" />
<item android:id="@+id/sub_item4"
android:title="SubItem" />
</group>
</menu>
</menu>
结果应该看起来像:
我发现我可以使用类似的方法设置文本颜色:
MenuItem menuItem = navigationView.getMenu().findItem(R.id.menu_item);
SpannableString s = new SpannableString(menuItem.getTitle());
s.setSpan(new TextAppearanceSpan(this, R.style.TextAppearance), 0, s.length(), 0);
if (menuItem.getItemId()==R.id.nav_targets){
menuItem.setTitle(s); }
但是如何设置填充背景色?