У меня есть такая проблема, которую я хотел бы услышать об изменении переменной.
Допустим, у меня инициализирована var foo:Int = 10
, и где-то в коде он меняет свое значение на что-то еще, давайте возьмем foo = 99
, вот мой фрагмент кода в kotlin.
var foo:Int=10
private val changeSupport: PropertyChangeSupport? = PropertyChangeSupport(foo)
val observer = {
property: KProperty<*>,
oldValue: Int?,
newValue: Int? -> changeSupport!!.firePropertyChange(property.name, oldValue, newValue)
}
var oof: Int? by Delegates.observable(foo, observer)
changeSupport!!.addPropertyChangeListener { event ->
Log.d("loggg","Property [${event.propertyName}] changed " + "from [${event.oldValue}] to [${event.newValue}]")
}
Итак, где-то в коде я пишу foo = 99
Я должен получить журнал. Я много чего перепробовал, следил за этой статьей, но безуспешно.
Я что-то упустил?
Как создать прослушиватель изменений для переменной?
http://kotlination.com/kotlin/kotlin-observable-property-delegated-property
https://www.javalobby.org/java/forums/t19476.html