如何将SearchView添加到android中的操作栏

时间:2014-10-02 00:43:16

标签: android android-layout android-actionbar searchview actionview

在以下代码段中,yourapp引用了什么?我尝试使用包名称,然后使用项目名称,但由于代码无法编译,因此它们不是答案

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
    <item android:id="@+id/action_search"
          android:title="@string/action_search"
          android:icon="@drawable/ic_action_search"
          yourapp:showAsAction="ifRoom|collapseActionView"
          yourapp:actionViewClass="android.support.v7.widget.SearchView" />
</menu>

1 个答案:

答案 0 :(得分:1)

如果您要在API少于11的情况下使用SearchView(显然您不是),则必须从ActionBarCompat扩展您的活动,并且在菜单的xml布局中必须使用其他xml名称showAsActionactionViewClass的空格。然后你必须使用支持库中的searchview。(android.support.v7.widget.SearchView) xml名称空间是任意的,你在这里称它为yourapp。因此,由于android:minSdkVersion="11"

,您必须使用以下代码
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
       >
    <item android:id="@+id/action_search"
          android:title="@string/action_search"
          android:icon="@drawable/ic_action_search"
          android:showAsAction="ifRoom|collapseActionView"
          android:actionViewClass="android.widget.SearchView" />
</menu>