我一直在努力使用support-v7库使SearchView控件在actionbar中扩展。当我以4.0+为目标时,我已经设法在没有支持库的情况下让它工作。但是我想为2.3+编写应用程序,所以我需要使用support库。 我创建了一个空白的新活动,并使用以下menu.xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
<item
android:id="@+id/action_search"
android:icon="@android:drawable/ic_menu_search"
yourapp:showAsAction="always"
yourapp:actionViewClass="android.support.v7.widget.SearchView"
android:title="Search"/>
</menu>
这甚至不显示搜索按钮,更不用说点击后展开了。它只是将搜索添加到菜单中,而不是在操作栏中显示出来。
另外,我尝试了没有使用appcompat库的相同方法,我只是将menu.xml替换为:
<item
android:id="@+id/action_search"
android:icon="@android:drawable/ic_menu_search"
android:showAsAction="always"
android:actionViewClass="android.widget.SearchView"
android:title="Search"/>
它非常完美地工作,甚至在单击时扩展到搜索文本输入窗口小部件。 使用appcompat库时,我想要像第二张图片中的搜索视图,但出于某种原因似乎不起作用。我正在使用eclipse,并且已按照Support Library Setup[developer.android.com]中的说明准确地包含了支持库和资源。
我的清单文件中minSdk版本为7,targetSdk版本为18,构建目标也是18。
我怀疑支持库设置有些问题,请问有谁能告诉我可能做错了什么吗?谢谢!