我为什么得到:不能将null强制转换为非null类型的android.widget.SearchView?

Mis*_*ere 2 null search android widget kotlin

我正在尝试在菜单栏上实现“搜索窗口小部件”。但是,我收到错误消息:“无法将null强制转换为非null类型的android.widget.SearchView”。但没有结果。

你能给我一些提示吗?

minSdkVersion 17 targetSdkVersion 26

override fun onCreateOptionsMenu(menu: Menu?): Boolean {

        menuInflater.inflate(R.menu.menu, menu)

        val searchView = menu!!.findItem(R.id.app_bar_search).actionView as SearchView
        val searchManager = getSystemService(Context.SEARCH_SERVICE) as SearchManager
        searchView.setSearchableInfo(searchManager.getSearchableInfo(componentName))
        searchView.setOnQueryTextListener(object: SearchView.OnQueryTextListener{
            override fun onQueryTextSubmit(p0: String?): Boolean {
                return false
            }

            override fun onQueryTextChange(p0: String?): Boolean {
                return false
            }

        })
Run Code Online (Sandbox Code Playgroud)

<item
        android:id="@+id/app_bar_search"
        android:actionViewClass="android.widget.SearchView"
        android:icon="@drawable/ic_search_black_24dp"
        android:title="Search"
        app:showAsAction="always"/>
Run Code Online (Sandbox Code Playgroud)

Bri*_*cho 7

尝试更换

android:actionViewClass="android.widget.SearchView"

app:actionViewClass="android.widget.SearchView"