java - Android Activity 菜单

标签 java android menu

我想创建一个与 Whatsapp 类似的选项菜单,即使设备有自己的“硬件”选项按钮。我在网上找到的解决方案工作得很好,直到我想向栏添加另一个操作。

菜单:

 <menu xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto">
 <item
            android:title=""
            android:id="@+id/addViewedMovie"
            android:icon="@mipmap/ic_add_to_queue_black_24px"

            android:showAsAction="always"

            ></item>    
        <item
            android:title=""
            android:id="@+id/menu_overflow"
            android:icon="@mipmap/ic_more_vert_white_48dp"

            app:showAsAction="always">
            <menu>
                <item
                    android:id="@+id/show_settings"
                    app:showAsAction="never"
                    android:title="@string/setttings"/>
                <item
                    android:id="@+id/show_help"
                    app:showAsAction="never"
                    android:title="@string/help"/>
                <item
                    android:id="@+id/show_about"
                    app:showAsAction="never"
                    android:title="@string/about"/>

            </menu>

        </item>

    </menu>

这在我的 MainActivity 中:

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

这样,应用程序会强制将 addViewedMovie 操作放入溢出菜单中。有谁知道如何防止这种情况吗?

最佳答案

尝试这段代码并告诉我它是否有效..您应该使用app:showAsAction而不是android:showAsAction而且您不需要使用子菜单来显示3个点..下面的代码工作正常也显示3个点

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:title="Movie"
        android:id="@+id/addViewedMovie"
        android:icon="@mipmap/ic_add_to_queue_black_24px"
        app:showAsAction="always"/>  

   <item
        android:id="@+id/show_settings"
        app:showAsAction="never"
        android:title="@string/setttings"/>
   <item
        android:id="@+id/show_help"
        app:showAsAction="never"
        android:title="@string/help"/>
   <item
        android:id="@+id/show_about"
        app:showAsAction="never"
        android:title="@string/about"/>
</menu>

关于java - Android Activity 菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43248218/

相关文章:

android - 有多少百分比的 Android 设备具有合理的 OpenGL 性能?

java - Gradle找不到tools.jar

java - 当在 hibernate 中创建多个子实体时,如何仅创建一次父实体?

java - Android读取xml错误

Android AdapterView添加动画

linux - linux buildroot menuconfig中的su配置在哪里

java - 使用 CSV 文件创建数据库 Android

java - 我如何从 BSF 后处理器的脚本代码中做出断言?

html - 用于导航菜单的 Internet Explorer 内联列表

javascript - 使用 "this"选择器的 JQuery Mobile 菜单不起作用