在 Android 中为菜单项使用自定义视图

问题描述 投票:0回答:0

我在 Android 中对菜单项使用自定义视图时遇到问题,我知道这个问题已经回答了很多次,但我的情况有点独特。 我的菜单只有一个项目,然后在这个根项目下有另一个菜单有很多项目 我正在尝试对子菜单中的项目使用自定义视图。但我总是得到“这是标题”而不是“这是自定义视图”

我的菜单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="com.example.myapplication.MainActivity">
    <item
        android:id="@+id/action_settings"
        android:title="@string/action_settings"
        app:showAsAction="always">
        <menu>
            <item android:id="@+id/new_menu_item"
                app:actionLayout="@layout/menu_item_layout"
                app:showAsAction="always"
                android:title="this is title" />
        </menu>
    </item>
</menu>

我的自定义视图 menu_item_layout 看起来像这样

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#000000"
        android:text="this is custom view"/>
</LinearLayout>

我也尝试在代码中调用 new_menu_item 上的 setActionView 但仍然不起作用,添加 app:showAsAction="always" 没有帮助,在 app:actionLayout 和 android:actionLayout 之间切换也没有帮助

android android-layout android-custom-view
© www.soinside.com 2019 - 2024. All rights reserved.