由于Manifest中的一些错误,SearchView.setSearchableInfo崩溃了

时间:2014-03-06 20:57:30

标签: android android-actionbar android-manifest manifest searchview

我正在尝试将SearchView添加到MainActivity上的操作栏。我创建了 res / xml / searchable.xml 和另一个活动 SearchResultsActivity 来处理搜索。但是,当执行MainActivity中的这两行代码时,应用程序崩溃:

searchView.setSearchableInfo(searchManager
            .getSearchableInfo(getComponentName()));

清单:

   <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >

        <meta-data
            android:name="android.app.default_searchable"
            android:value=".SearchResultsActivity"
             />
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

    </activity>

    <activity android:name=".SearchResultsActivity"
        android:parentActivityName=".MainActivity" >
        <meta-data
            android:name="android.app.searchable"
            android:resource="@xml/searchable" />
        <intent-filter>
            <action android:name="android.intent.action.SEARCH" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

    </activity>
</application>

</manifest>

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我在检查LogCat输出时终于发现了我的错误,建议 cYrixmorten 。在菜单布局 main.xml 中,我写了

android:actionViewClass="android.support.v7.widget.SearchView"

而不是

android:actionViewClass="android.widget.SearchView"

问题是无法找到SearchView类。