0

我正在尝试将项目添加到Activity模块的选项菜单中。但是如果没有选项菜单,我想扩充我自己的菜单。如果我xml在模块中声明,则表示找不到该资源。那么也许有一些方法可以在没有布局文件的情况下膨胀菜单?

我是说getMenuInflater().inflate(id, menu);

编辑

没有答案是我要求的,所以我将尝试指定我的问题。如果没有onOptionsMenuCreated(我通过 进行检查reflections),我需要将我的自定义菜单添加到Activityfrom 模块中。我该怎么做?

4

3 回答 3

2

膨胀意味着将 XML 文件转换为 Java 对象。没有 XML 文件就没有膨胀。但是,您可以使用 java 代码创建菜单,例如:

public boolean onCreateOptionsMenu(Menu menu) {
    MenuItem menuItem = menu.add(Menu.NONE, Menu.NONE, Menu.NONE, R.string.title_about);
    menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
    menuItem.setIcon(R.drawable.ic_about);
    ...
}

干杯

于 2013-06-11T06:57:04.430 回答
1

可以使用 xml 和 java 代码创建菜单。要通过代码添加菜单项,您将使用如下内容

@Override  
public boolean onCreateOptionsMenu(Menu menu) {  
    menu.add("Add")  
    .setIcon(R.drawable.menu_add)  
    .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);  
    return true;  
}
于 2013-06-11T06:56:13.213 回答
0
@Override  
public boolean onCreateOptionsMenu(Menu menubn) {  
    menubn.add("Add");  
    menubn.setIcon(R.drawable.menuoption);  
    menubn.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);  

}
于 2013-06-11T07:31:29.330 回答