如果showAsAction=never,自定义布局菜单项将显示为空

5
我正在尝试使用以下代码将SwitchCompat添加到溢出菜单:
main.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">
    <item
       android:id="@+id/menu_dummy_content"
       android:title=""
       android:actionViewClass="android.support.v7.widget.SwitchCompat"
       app:showAsAction="never"
       app:actionLayout="@layout/menu_item_switch"/>

    <!-- TODO: Delete this after bug fix-->
    <item
       android:id="@+id/menu_dummy_content_2"
       android:title="Second Title"
       app:showAsAction="never"/>
</menu>

菜单项开关的布局为:
<android.support.v7.widget.SwitchCompat
    xmlns:android="http://schemas.android.com/apk/res/android"

    android:id="@+id/menu_item_switch_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:text="@string/menu_item_dummy_tasks"
    android:layout_centerVertical="true"/>

如果我设置app:showAsAction="ifRoom"或其他任何值,开关看起来完全正常,监听器也能正常工作。但是一旦我将showAsAction设置为never,开关的视图变成了白色/空白,但onOptionsItemSelected方法显示点击的是menu_dummy_content项。

我还尝试只在自定义布局中使用TextView,但这也显示为空白。我是否遗漏了什么?
1个回答

1

如果您将showAsAction属性设置为never,则这些菜单项永远不会显示为操作布局。

我认为您需要在此处添加标题文本...

 <item
   android:id="@+id/menu_dummy_content"
   android:title=""
   android:actionViewClass="android.support.v7.widget.SwitchCompat"
   app:showAsAction="never"
   app:actionLayout="@layout/menu_item_switch"/>

像这样...
android:title="First Title"

谢谢你的回答,但是我想要显示一个SwitchCompat而不是溢出中的文本。 - Sahil Dave

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接