为什么我得到:null无法转换为非null类型android.widget.SearchView?

时间:2017-09-01 14:22:00

标签: android search null 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
            }

        })

<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"/>

1 个答案:

答案 0 :(得分:5)

尝试替换

android:actionViewClass="android.widget.SearchView"

app:actionViewClass="android.widget.SearchView"