虽然这可能不是最好的方法,但我相信它可能会对您有所帮助。
您如何在组内添加额外的禁用项目作为“标题”,您也可以为这些项目创建一个样式,以便它们可以显示您想要的颜色。
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android">
<group>
<item
android:title="menu1"
android:enabled="false"
android:checkable="false">
</item>
<item
android:title="opt1">
</item>
<item
android:title="opt2">
</item>
<item
android:title="opt3">
</item>
</group>
<group>
<item
android:title="menu2"
android:enabled="false"
android:checkable="false">
</item>
<item
android:title="opt4">
</item>
<item
android:title="opt5">
</item>
</group>
</menu>
您也可以使用 java 尝试类似的方法。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
menu.addSubMenu(Menu.NONE, 1, 1, "SubMenu");
menu.add(1, 2, 2, "Item");
menu.add(1, 3, 3, "Item");
menu.addSubMenu(Menu.NONE, Menu.NONE, 4, "SubMenu");
menu.add(4, 5, 5, "Item");
menu.add(4, 6, 6, "Item");
menu.add(4, 7, 7, "Item");
return true;
}
参数
-
组 ID
此项目应属于的组标识符。这也可用于定义批次状态更改的项目组。如果项目不应该在一个组中,通常使用 NONE。
-
itemId
唯一的项目 ID。如果您不需要唯一 ID,请使用 NONE。
-
订购
项目的顺序。如果您不关心订单,请使用 NONE。请参阅 getOrder()。
-
标题
为项目显示的文本。
然而,我相信两者应该有相同的结果。
希望对你有帮助。