SearchView veya buna benzer bir setText () yöntemi var mı? SearchView'de arama metnini bu şekilde ayarlamaya çalışıyorum ama bunun için bir yöntem yok.
searchView.setText(searchToken);
SearchView veya buna benzer bir setText () yöntemi var mı? SearchView'de arama metnini bu şekilde ayarlamaya çalışıyorum ama bunun için bir yöntem yok.
searchView.setText(searchToken);
Yanıtlar:
Merak edip denedikten sonra, API'de setQuery () adlı, searchView metnini ayarladığınız ve aramayı göndermeyi veya boole parametresini kullanmamayı seçebileceğiniz bir yöntem olduğunu öğrendim.
searchView.setQuery(searchToken, false);
true
sorgunun da yürütülmesi için, ancak sorgu iyi yürütülse de, manuel olarak odak verilene kadar metin kutusunun boş kaldığını unutmayın. Otomatik ayar değerinin de otomatik olarak görüntülenmesini nasıl sağlayabilirim?
setQuery()
Metin kutusundaki metni değiştirmek için kullanabilirsiniz .
Bununla birlikte, setQuery()
yöntem bir arama görünümünün odak durumunu tetikler, bu nedenle bu yöntem çağrıldıktan sonra ekranda bir klavye gösterilir.
Bu sorunu çözmek için searchView.clearFocus()
sonra arayınsetQuery()
onu unfocus yöntem ve klavye ekranda gösterilmez.
Misal:
String suggestWord = intent.getDataString();
searchView.setQuery(suggestWord, false);
searchView.clearFocus();
Önceden dosyalamak istiyorsanız SearchView
, bazı metinler searchView.setQuery(text, false)
kutudan çıkmaz. nedeni ne SearchView
zaman genişlediğidir
searchView.onActionViewExpanded()
hangi çağrılar çağrılır searchView.setText("")
ve ayarladığımız herhangi bir metni temizler.
Bir kez Çözüm bir dinleyici Expand set ve ön fil metni ayarlamaktır SearchView
genişletilir
override 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
}
SearchView'ün genişlemesini ve kullanıcı x'e (kapat) dokunduktan sonra bir simgeye küçültülebilmesini istiyorsanız, yol şudur:
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.
NOT: Şunları kullanarak genişletirseniz:
searchView.onActionViewExpanded()
searchView, kullanıcı x'e (kapat) dokunduktan sonra küçülmez