Android 菜单栏中未显示的菜单项

Android 菜单栏中未显示的菜单项,android,xml,android-studio,Android,Xml,Android Studio,我有同样的问题,因为张贴多次或多次。我定义了一个菜单项,它显示在AndroidStudio的预览中: 但是,当我在手机上运行应用程序时,图标(一个png图像)不可见,并且有很多可用空间。但是,此“添加”选项会显示在“选项”菜单中(最右侧;与“Srttings”一起)。这是我的菜单.xml: <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.andro

我有同样的问题,因为张贴多次或多次。我定义了一个菜单项,它显示在
AndroidStudio
的预览中:

但是,当我在手机上运行应用程序时,图标(一个
png
图像)不可见,并且有很多可用空间。但是,此“添加”选项会显示在“选项”菜单中(最右侧;与“Srttings”一起)。这是我的
菜单.xml

<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:id="@+id/action_favourite"
        android:icon="@mipmap/ic_add"
        android:title="@string/menu_add"
        android:showAsAction="always"/>


    <item android:id="@+id/action_settings" android:title="@string/action_settings"
        android:orderInCategory="100" app:showAsAction="never" />

</menu>

只需使用
app:showAsAction=“始终”
xmlns:app=”http://schemas.android.com/apk/res-auto“
然后它就会显示出来

<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:id="@+id/action_favourite"
        android:icon="@mipmap/ic_add"
        android:title="@string/menu_add"
        app:showAsAction="always"/>


    <item android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100"
        app:showAsAction="never" />

</menu>

您可能正在使用依赖于应用程序命名空间的支持库。如果有疑问,只需添加两次相同的属性(
android:
app:
namespace)。

onCreate()
add
设置选项菜单(true)


而且您可能正在扩展错误的菜单文件。

您能否共享您的
onCreateOptions菜单()
onPrepareOptions菜单()
代码?请查看更新的问题;我没有方法
onPrepareOptions菜单()
…您是否尝试将
onCreateOptions菜单
移动到
onPrepareOptions菜单
?文档中说,每次显示菜单时,都会在显示菜单之前调用
onPrepareOptionsMenu
。我敢打赌,在
oncreateoptions menu
上打开菜单时,系统尚未计算菜单的大小,您的所有菜单选项都显示为溢出。我不太确定您的建议。我用
onprepareOptions功能表
替换了方法名
onCreateOptions功能表
,但这并不能解决我的问题,事情甚至变得更糟。我不知道你所说的将一种方法“移动”到另一种方法是什么意思…?我只是尝试了你的建议,但仍然没有在菜单栏中看到名称
Add
。与以前完全相同的行为…如果使用提供的代码,则工具栏中应有图标,溢出菜单中应有设置选项。你到底看到了什么?就像在菜单栏中发布的图像一样,但菜单栏中没有“加号”图标。左边写着“Testapp”,我看到右边的三个点。当我点击这三个点时,我看到了“添加”菜单(和“设置菜单”)。我刚刚用完整的源代码更新了样本,它在我的GT-I9100上按预期工作。请确保重新编译项目,因为可能检测不到xml的微小更改。是的,终于!!老兄,安卓真是一个令人痛苦的。。。一小步,一小步,就要花你几个小时!不过还是要谢谢你。。
<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:id="@+id/action_favourite"
        android:icon="@mipmap/ic_add"
        android:title="@string/menu_add"
        app:showAsAction="always"/>


    <item android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100"
        app:showAsAction="never" />

</menu>