【发布时间】:2014-08-19 17:20:49
【问题描述】:
我在许多提供一些搜索功能的应用程序中看到的一个常见模式是让搜索小部件从 ActionBar 中清除其他菜单图标。现在只需在我的菜单项中将ifRoom 用于showAsAction 即可。不过,我想在操作栏中显示更多菜单项,因为似乎 ActionBar 在确定ifRoom 的方式上非常保守,因此至少有一个重要的菜单项被推到溢出(也许比我更聪明的人知道)他们为什么这样做)。
那么,当激活搜索小部件时,如何将showAsAction 设置为always,同时仍从操作栏上清除菜单项?当我现在尝试时,菜单项不会移动,并且搜索小部件是压缩的。
这是我的菜单:
<item
android:id="@+id/action_search"
android:icon="@drawable/ic_action_search"
android:title="@string/action_search"
android:showAsAction="collapseActionView|always"
android:actionViewClass="android.widget.SearchView" />
<item
android:id="@+id/action_stores"
android:title="@string/action_stores"
android:icon="@drawable/ic_action_stores"
android:showAsAction="always" />
<item
android:id="@+id/action_shopping_lists"
android:title="@string/action_shopping_lists"
android:icon="@drawable/ic_action_lists"
android:showAsAction="always" />
<item
android:id="@+id/action_preferences"
android:orderInCategory="100"
android:title="@string/action_settings"
app:showAsAction="never"/>
我的可搜索.xml
<?xml version="1.0" encoding="utf-8"?>
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="@string/app_name"
android:hint="@string/search_hint" >
</searchable>
【问题讨论】:
标签: android android-actionbar android-searchmanager