首先,可以尝试使用观察属性来监听属性值的变化,并在属性更改时更新适配器。例如:
var myProperty: String by Delegates.observable("defaultValue") { prop, oldVal, newVal ->
// update adapter with new value
}
// pass myProperty to adapter
adapter.myMethod(myProperty)
如果上述方法不奏效,则可以考虑将属性作为参数传递给适配器的方法,并在适配器中使用该值。例如:
class MyAdapter(private val myProperty: String) : RecyclerView.Adapter() {
// ...
fun onBindViewHolder(holder: MyViewHolder, position: Int) {
// use myProperty here
}
// ...
}
// pass myProperty to adapter
adapter = MyAdapter(myProperty)
无论哪种方法,都应该能够使属性的更改反映在适配器中。