17

我正在关注一本关于 Android 开发的书,以开始编写我的第一个真正的应用程序。我开始为我的一项活动制作选项菜单。菜单显示,但菜单项的相应图标拒绝显示。这是菜单的代码:

提醒列表活动

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        MenuInflater mi = getMenuInflater();
        mi.inflate(R.menu.list_menu, menu);
        return true;
    }

res/menu/list_menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:id="@+id/menu_insert"
        android:icon="@drawable/menu_add"
        android:title="@string/menu_insert" />

</menu>

我已将 ic_menu_add.png 图标 (32x32px) 从我的 Android SDK 子文件夹之一复制到我的 res/drawable-mdpi 文件夹,并将文件重命名为 menu_add.png。我在 eclipse 中刷新了文件夹,所以图标出现了,正如你所见,我将它设置为布局文件中菜单项的图标。我尝试在模拟器中运行我的项目几次,但图标从未出现。作为记录,我使用的是 Android 4.0.3 ..

有任何想法吗?

4

3 回答 3

32

在 Android 3.0+ 上,选项菜单(操作栏中的溢出菜单)的首选方法将不显示图标。如果您有android:targetSdkVersion="11"或更高版本,图标将永远不会出现在 Android 3.0+ 的菜单中。如果您将选项菜单项提升为工具栏按钮,则会显示图标,并且图标将显示在 Android 1.x/2.x 设备上。

于 2012-01-18T13:13:36.330 回答
8

这在 API 23 中非常适合我

<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=".MainActivity">
<item
    android:icon="@drawable/ic_menu"
    android:orderInCategory="100"
    android:title="Option Menu"
    app:showAsAction="always">
    <menu>
        <item
            android:id="@+id/action_myorder"
            android:icon="@drawable/ic_order"
            android:title="My Order" />
        <item
            android:id="@+id/action_myaccount"
            android:icon="@drawable/ic_account"
            android:title="My Account" />
        <item
            android:id="@+id/action_share"
            android:icon="@drawable/ic_share"
            android:title="Share" />
        <item
            android:id="@+id/action_term_condition"
            android:icon="@drawable/ic_terms"
            android:title="Term and Conditions" />
        <item
            android:id="@+id/action_logout"
            android:icon="@drawable/ic_logout"
            android:title="Logout" />
    </menu>
</item>

于 2016-05-27T06:32:24.603 回答
0

一个好主意是您创建了一个布局,RelativeLayout当用户选择您的菜单时,您的布局就会显示出来。

于 2014-02-23T15:51:09.227 回答