我成功搞砸了我的一个Android项目,可能是因为我删除了某些东西。以下是我的清单和菜单资源。不知何故,当我运行应用程序时,我的操作栏没有显示菜单按钮。
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_settings"
android:title="@string/menu_settings"
android:orderInCategory="100"
android:showAsAction="never" />
</menu>
清单文件:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myapp"
android:versionCode="6"
android:versionName="2.1.0" >
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MyActivity"
android:label="@string/title_activity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
我在我的Activity代码中也有这个。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.menu_settings:
return true;
default:
return super.onOptionsItemSelected(item);
}
}
但是当应用程序运行时,仍然没有创建菜单/选项按钮。有任何想法吗?
编辑1
经过一番试错,我发现向我的应用程序添加本地化支持导致了这个问题。
我删除了所有的本地化values-*目录,操作栏就回来了,然后我将values目录复制到values-en并在我的英语设备上运行它。然后操作栏消失了。这对任何人有所启示吗?
android:showAsAction="always"
,但仍然没有任何显示。 - Ne0never
,这很奇怪。我的代码中总是写成android:showAsAction="ifRoom|withText"
。 - jnthnjns