android菜单项不显示图标?
我已经创建了一个单一的菜单项,但是当它弹出时图标不会出现,只有文本会出现。我错过了一个场景android菜单项不显示图标?,android,Android,我已经创建了一个单一的菜单项,但是当它弹出时图标不会出现,只有文本会出现。我错过了一个场景 java File package com.menu; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; public class MymenuActivity extends Activity { /** Cal
java File
package com.menu;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
public class MymenuActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
}
menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/icon"
android:icon="@drawable/ic_launcher" />
<item android:id="@+id/text"
android:title="Text" />
<item android:id="@+id/icontext"
android:title="Icon"
android:icon="@drawable/ic_launcher" />
</menu>
请帮助检查您的API级别,可能与此相关: 摘自:
从API级别11(Android蜂巢)开始,Android引入了菜单的新概念。为该API级别构建的设备不再具有菜单键。在按下一个键之后,没有显示菜单,而是出现了一个新的UI组件:Actionbar。Actionbar现在显示尽可能多的菜单项,然后创建一个按钮,在覆盖中显示其余菜单项
我假设您正在为您的活动使用某种类型的主题,以防止出现Actionbar,因此没有可见的菜单项。另外,请阅读关于如何支持平板电脑和手机的指南,开始了解新actionbar的工作原理。您应该添加showAsAction=“ifRoom”,以便在有足够空间时,它将显示为图标 另外,请注意,如果您使用任何类型的支持库,您应该检查此属性的名称空间 例如:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.test.MainActivity" >
<item
android:icon="@drawable/ic_action_alerts_and_states_warning_holo_dark"
app:showAsAction="ifRoom"
android:title="sorting"/>
</menu>
您的目标DPI drawable目录中是否存在ic_启动器
drawable?您解决了这个问题吗?具有完全相同的问题“为该API级别构建的设备不再具有菜单键。”完全不正确。看看三星Galaxy设备吧!我也有同样的问题。我忘了将xmlms:app名称空间添加到我的菜单中。确保showAsAction使用的是应用程序名称空间,而不是android名称空间。