安卓环境
kotlin_version = '1.3.20'
compileSdkVersion 28
我有一个类型为 ArrayAdapter
Activity.xml
<android.support.v7.widget.SearchView
android:id="@+id/searchView">
...
</android.support.v7.widget.SearchView>
<ListView
android:id="@+id/listView"
...
/>
Activity.kt
...
searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener {
override fun onQueryTextChange(newText: String): Boolean {
adapter.filter.filter(newText)
return true
}
override fun onQueryTextSubmit(query: String): Boolean {
// task HERE
return false
}
})
...
所以 setOnQueryTextListener() 可以正常工作,甚至 adapter 也可以正常工作,但我无法让过滤器正常工作。
最佳答案
添加这一行
adapter.notifyDataSetChanged()
过滤语句之后。
关于android - Kotlin 中 SearchView 的过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55537368/