我在按下“菜单”按钮并在 onCreateOptionsMenu
中添加菜单项时收到通货膨胀错误方法。我在下面包含了一些错误。
代码如下,如果我自己尝试,而不是作为我整个 Activity 的一部分,它就可以工作。我认为将我的整个 Activity 粘贴在这里是不可行的(我不知道是哪一点导致了这种情况),所以想知道是否有人以前经历过这种情况?
public boolean onCreateOptionsMenu(Menu m) {
Log.d(TAG, "Menu Create");
this.menu = m;
m.add(0, 0, 0, "HAZAH!");
return true;
}
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): android.view.InflateException: Binary XML file line #17: Error inflating class com.android.internal.view.menu.IconMenuItemView
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): at android.view.LayoutInflater.createView(LayoutInflater.java:513)
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:565)
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): Caused by: java.lang.reflect.InvocationTargetException
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): at com.android.internal.view.menu.IconMenuItemView.<init>(IconMenuItemView.java:86)
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): Caused by: java.lang.reflect.InvocationTargetException
05-24 17:18:47.963: ERROR/AndroidRuntime(1658): at com.android.internal.view.menu.IconMenuItemView.<init>(IconMenuItemView.java:86)
如果我尝试在连接调试器的情况下按菜单,我会看到它停在这里:
Suspended (exception InflateException)
ViewRoot.deliverKeyEventToViewHierarchy(KeyEvent, boolean) line: 2425
谢谢。
最佳答案
这是因为我为包含以下行的 Activity 分配了一个主题:
<item name="android:text"></item>
我用它来删除标题栏中的应用程序名称文本。我想这不是正确的方法!幸运的是,这是我的应用最近发生的变化之一,因此我能够(最终)找到它。
关于Android:什么会导致选项菜单膨胀错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2898697/