XML(菜单)资源的inheritance和扩展

是否有可能在Android中轻松inheritance和扩展XML资源,特别是菜单。

例如。 如果我的base_menu.xml是

<menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/item_manual_input" android:title="@string/manual_input/"> <item android:id="@+id/item_logoff" android:title="@string/logoff"/> </menu> 

这两个选项我想在别处重用(在另一个活动)。 而不是重复base_menu中的项目标签,我非常想为inheriting_menu.xml做这样的事情

 <menu xmlns:android="http://schemas.android.com/apk/res/android" > <menu android:id="@id/base_menu"/> <item android:id="@+id/extra_option" android:title="@string/extra_option/> </menu> 

但在任何文档中我都没有看到类似的东西。 是这样的支持,还是我坚持使用片段来限制各种XML资源的代码和XML复制? (我相信这会奏效,但我还没有使用片段)

Solutions Collecting From Web of "XML(菜单)资源的inheritance和扩展"

不可用于菜单,但可用于布局
请参阅include标记: https : //developer.android.com/training/improving-layouts/reusing-layouts.html

对于菜单:
您可以通过在菜单XML文件中添加单个菜单项来解决代码问题:

 @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.base, menu); // All menus in base.xml getMenuInflater().inflate(R.menu.extras, menu); // base.xml + extras.xml menu.add("More"); // base.xml + extras.xml + "More" return true; }