当我在avd模拟器上执行te app时,菜单会出现在操作栏上,但是当它在真实设备上执行时,我必须点击选项按钮来查看菜单。这段代码出了什么问题?< / p>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.android.was4fi.MainActivity" >
<item
android:id="@+id/op1"
android:showAsAction="never"
android:title="@string/comite"/>
<item
android:id="@+id/op2"
android:showAsAction="never"
android:title="@string/programa" />
<item
android:id="@+id/op3"
android:showAsAction="never"
android:title="@string/fechas" />
<item
android:id="@+id/op4"
android:showAsAction="never"
android:title="@string/localizacion" />
</menu>
答案 0 :(得分:0)
正如我已经提到的几天前here,在具有硬件菜单按钮的设备上看不到溢出图标。要启用操作溢出图标,您可以在应用程序中执行脏黑客攻击。
private void getOverflowMenu() {
try {
ViewConfiguration config = ViewConfiguration.get(this);
Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
if(menuKeyField != null) {
menuKeyField.setAccessible(true);
menuKeyField.setBoolean(config, false);
}
} catch (Exception e) {
e.printStackTrace();
}
}
在application
班级onCreate()
中调用上述方法。