Почему мой вид поиска отображается значком при повороте устройства?

#android #android-layout #android-lifecycle #searchview #android-menu

Вопрос:

Когда я поворачиваю устройство, мне нужно отобразить текст в режиме поиска, пока список не видоизменен, поэтому я установил isIconified = false свойство, onCreateOptionsMenu но когда устройство поворачивается, вид поиска по-прежнему остается значком.

Запрос выполнен нормально, так как список элементов изменился

Моя основная деятельность:

 private var searchViewText: CharSequence? = null

/**
 * device rotation safety
 */
override fun onSaveInstanceState(savedInstanceState: Bundle) {
    //save the SearchView text
    savedInstanceState.putCharSequence(
        "searchViewText",
        searchView.query
    )
    super.onSaveInstanceState(savedInstanceState)
}

override fun onRestoreInstanceState(savedInstanceState: Bundle) {
    super.onRestoreInstanceState(savedInstanceState)
    searchViewText = savedInstanceState.getCharSequence("searchViewText")
}

/**
 * inflate option menu
 */
override fun onCreateOptionsMenu(menu: Menu): Boolean {
    menuInflater.inflate(R.menu.menu_main_activity, menu)
    val searchItem = menu.findItem(R.id.item_search)
    searchView = searchItem.actionView as SearchView
    searchView.setOnQueryTextListener(QueryListener())
    if(searchViewText != null amp;amp; searchViewText.toString() != "") {

        searchView.isIconified = false
        searchView.setQuery(searchViewText, true)
    }
    return super.onCreateOptionsMenu(menu)
}