android - 扩展 AppCompatActivity 后我的搜索栏出现错误

标签 android android-appcompat searchview

在扩展 AppCompatActivity 而不是 Activity 之后,我的项目出现以下错误:

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.SearchView.setSearchableInfo(android.app.SearchableInfo)' on a null object reference

我点击了此链接[this][1],但它对我不起作用。

请就我做错的地方给我一些建议。

这是我的搜索代码:

 SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
            SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
            searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

这是菜单xml

  <item
    android:id="@+id/search"
    android:app:actionViewClass="android.widget.SearchView"
    android:icon="@drawable/ic_search"
    android:app:showAsAction="collapseActionView|always"
    android:title="@string/Search"/>

最佳答案

也尝试为您的 actionViewClass 使用自定义应用命名空间:

app:actionViewClass="android.support.v7.widget.SearchView"/>

关于android - 扩展 AppCompatActivity 后我的搜索栏出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33482964/

相关文章:

android - 所有 com.android.support 库必须使用完全相同的版本规范 gradle 问题

android - 在 ListView Android 中设置 CheckBox

android - Lollipop 上的工具栏高度太大

android - 如何解决 Android 错误 "method setSupportActionBar in class AppCompatActivity cannot be applied to given types"?

Android Searchview 不在操作栏中在其他 View 上创建

Android 共享首选项名称

android - 我们可以使用Android YouTube API开发Google TV应用程序吗?

android - 使用 API 28 和 "androidx.appcompat"库项目表示找不到 "AppCompatActivity"符号

Android - 使用 Android 支持库时无法在 SearchWidget 中找到 TextView

java - SearchView 不启动 SearchableActivity