Apakah ada metode setText () untuk SearchView atau sesuatu seperti itu? Saya mencoba mengatur teks pencarian di SearchView seperti ini tetapi tidak ada metode untuk seperti ini.
searchView.setText(searchToken);
android
searchview
Khaled Annajar
sumber
sumber
true
agar kueri dieksekusi juga, tetapi perhatikan bahwa meskipun kueri dijalankan dengan baik, kotak teks tetap kosong, sampai ketika diberi fokus secara manual. Bagaimana saya memastikan nilai setel otomatis ditampilkan secara otomatis juga?Anda dapat menggunakan
setQuery()
untuk mengubah teks di kotak teks.Namun,
setQuery()
metode memicu status fokus tampilan penelusuran, sehingga keyboard akan muncul di layar setelah metode ini dipanggil.Untuk memperbaiki masalah ini, panggil saja
searchView.clearFocus()
setelahsetQuery()
metode untuk tidak fokus dan keyboard tidak akan muncul di layar.Contoh:
String suggestWord = intent.getDataString(); searchView.setQuery(suggestWord, false); searchView.clearFocus();
sumber
inilah yang berhasil untuk saya
MenuItem sItem = menu.findItem(R.id.search); SearchView searchView = (SearchView) sItem.getActionView(); sItem.expandActionView(); searchView.setQuery("your text", false);
sumber
Jika Anda ingin pre-fil Anda
SearchView
dengan beberapa tekssearchView.setQuery(text, false)
tidak akan bekerja di luar kotak. alasannya adalah saatSearchView
diperluassearchView.onActionViewExpanded()
panggil panggilan mana
searchView.setText("")
dan hapus teks apa pun yang telah kami tetapkan.Solusinya adalah mengatur Perluas pendengar dan mengatur teks pra-file setelah
SearchView
diperluasoverride fun onCreateOptionsMenu(menu: Menu): Boolean { menuInflater.inflate(R.menu.main, menu) val searchView = menu.findItem(R.id.action_search).actionView as SearchView menu.findItem(R.id.action_search).setOnActionExpandListener(object : MenuItem.OnActionExpandListener { override fun onMenuItemActionExpand(item: MenuItem?): Boolean { // it is important to call this before we set our own query text. searchView.onActionViewExpanded() searchView.setQuery("Prefil Text", false) return true } override fun onMenuItemActionCollapse(item: MenuItem?) = true }) return true }
sumber
Jika Anda ingin searchView diperluas dan dapat menyusut kembali menjadi ikon setelah pengguna mengetuk x (tutup), caranya adalah:
searchView.isIconified = false // Expand it searchView.setQuery("your text here", false) // true if you want to submit, otherwise false searchView.clearFocus() // so the keyboard is not show up.
CATATAN: Jika Anda mengembangkannya menggunakan:
searchView.onActionViewExpanded()
searchView tidak akan menyusut kembali setelah pengguna mengetuk x (tutup)
sumber