(Android) Почему app:actionLayout="" не работает?

Привет

Я использую ящик навигации.

Я хочу перейти от текста к тексту и значку в пунктах меню переполнения.

Поэтому я использовал «android: icon» и «android: title» в menu.xml. Но Ничего не отображается.

Точнее, я мог видеть только текст.

и

Я использовал android:actionLayout="@layout/overflow_menu_item". В overflow_menu_title определены текст и значок.

Но это тоже не работает

Я не знаю, почему это не работает.

Как установить текст и значок в элементе меню переполнения?

Я много искал, но это не помогло.

плиз помогите мне...

Вот код

overflow_menu.xml

<?xml version = "1.0" encoding = "utf-8"?>
<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 = ".MovieList">
    <item
        android:id = "@+id/menu_movie"
        android:orderInCategory = "150"
        android:icon = "@drawable/ic_search_black_24dp"
        android:title = "setting1"
        android:actionLayout = "@layout/overflow_menu_title"
        app:showAsAction = "never" />
    <item
        android:id = "@+id/menu_gallery"
        android:orderInCategory = "150"
        android:title = "setting2"
        android:icon = "@drawable/ic_search_black_24dp"
        app:showAsAction = "never" />

    <item
        android:id = "@+id/settings3"
        android:orderInCategory = "150"
        android:icon = "@drawable/ic_search_black_24dp"
        android:title = "setting2"

        app:showAsAction = "never" />
</menu>

overflow_menu_item.xml

<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
    android:gravity = "center_vertical"
    android:padding = "2dp"
    android:orientation = "horizontal"
    android:layout_width = "wrap_content"
    android:layout_height = "wrap_content"
    android:background = "@color/colorPrimaryDark">

    <ImageView
        android:layout_width = "24dp"
        android:layout_height = "24dp"
        android:src = "@drawable/ic_15"/>
    <TextView
        android:layout_width = "wrap_content"
        android:layout_height = "wrap_content"
        android:text = "MOVIE"
        android:textSize = "24dp"/>
</LinearLayout>

Отвечает ли это на ваш вопрос? Как показать значки в меню переполнения в панели действий Вы не видите значки, потому что они не должны отображаться. Решение состоит в том, чтобы использовать отражение, чтобы принудительно показать их.

Nicolas 15.12.2020 20:32

Спасибо, но это тоже не работает ТТ

ybybyb 16.12.2020 16:17
1
2
357
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы не можете создать собственный макет для элемента меню, используя android:actionLayout для элементов, которые не находятся на панели действий.

Другими словами, вы не можете установить android:actionLayout для неактивных элементов, которые находятся в элементах дополнительного меню.

Вы имеете в виду, что я не могу использовать android:actionLayout для пунктов меню переполнения? Итак, что мне делать, чтобы использовать android:actionLayout? Есть ли хороший способ? Я хочу отображать значок и текст в «элементах» меню переполнения

ybybyb 20.12.2020 20:28

Вы можете использовать его только для добавления действий на саму панель действий, как в этом ответе .. который находится перед пользователем на панели действий (не значок переполнения 3 точки)

Zain 20.12.2020 20:35

Я примерно понял. Вы говорите, что android:actionLayout можно использовать только в панели действий, а пункт меню невозможен? Тогда как можно установить значок и текст в пунктах меню?

ybybyb 20.12.2020 20:47

Да, то, что я имею в виду, android:actionLayout можно использовать только в actionbar, чтобы иметь собственный макет для элемента ActionBar, но не в дополнительном меню three-dots.. Вы хотите добавить значки в пункты меню переполнения?

Zain 20.12.2020 20:54

@ybybyb Можете ли вы проверить этот ответ - это то, о чем вы спрашиваете

Zain 20.12.2020 21:07

Другие вопросы по теме