Spec-Zone.ru › Kotlin 2

observable

kotlin-stdlib/kotlin.properties/Delegates/observable

Начиная с Kotlin: 1.0

inline fun <T> observable(initialValue: T, crossinline onChange: (property: KProperty<*>, oldValue: T, newValue: T) -> Unit): ReadWriteProperty<Any?, T>

Возвращает делегат свойства для свойства с возможностью чтения и записи, который при изменении вызывает указанную функцию обратного вызова.

Параметры

initialValue

начальное значение свойства.

onChange

функция обратного вызова, которая вызывается после изменения свойства. К моменту вызова этой функции значение свойства уже изменено.

Примеры

import kotlin.properties.Delegates
import kotlin.test.*

fun main() { 
   //sampleStart 
   var observed = false
var max: Int by Delegates.observable(0) { property, oldValue, newValue ->
    observed = true
}

println(max) // 0
println("observed is ${observed}") // false

max = 10
println(max) // 10
println("observed is ${observed}") // true 
   //sampleEnd
}

© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.properties/-delegates/observable.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API