У меня есть searchView в моем IndexActivity . При нажатии на searchView запускается новое действие под названием SearchActivity . Снова внутри поисковой активности у меня есть searchView, который расширяется при нажатии. У него есть прослушиватель запросов, который выполняет внешний вызов API.
Однако после того, как я открываю SearchActivity, щелкнув значок searchView, мне нужно снова щелкнуть searchView, чтобы ввести его. Я хочу, чтобы searchView был сфокусирован, как только начинается действие. Это мой код возможности поиска:
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.toolbar_search, menu)
val searchView: SearchView =
menu?.findItem(R.id.menu_search)?.actionView as SearchView
// searchView.setIconifiedByDefault(false)
// searchView.focusable = View.FOCUSABLE
// searchView.isIconified = false
// searchView.requestFocusFromTouch()
// searchView.onActionViewExpanded()
Прокомментированные строки - это те строки, которые я пробовал искать в Интернете, но, похоже, они не работают.
Это мой код в toolbar_searchbar. xml, который включен в activity_search, установленную SearchActivity:
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<androidx.appcompat.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:titleTextColor="@color/cardview_light_background"
app:subtitleTextAppearance="@font/alegreya_sans_medium"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@android:color/transparent"
android:id="@+id/toolbar_searchbar"
app:popupTheme="@style/AppTheme.PopupOverlay">
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
Это код toolbar_search. xml, который раздувается, как показано на приведенный выше код:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:title="Search"
android:id="@+id/menu_search"
android:icon="@drawable/quantum_ic_search_grey600_24"
app:showAsAction="always|collapseActionView"
app:actionViewClass="androidx.appcompat.widget.SearchView"
/>
</menu>
Это то, что я получаю в начале.
Это то, что я хочу начало.