Ответ
Compose использует механизм отслеживания состояния через State<T> и MutableState<T. Когда значение состояния изменяется, Compose автоматически перестраивает только те части UI, которые зависят от этого состояния.
Ключевые моменты:
Stateоборачивает значение и уведомляет Compose при изменении.- Изменение через
value(дляMutableState) илиupdateтриггерит рекомпозицию. - Compose сравнивает значения через
equals, поэтому важно избегать мутаций (используйтеcopyдля data-классов).
Пример:
var count by remember { mutableStateOf(0) }
Button(onClick = { count++ }) {
Text("Clicked $count times")
}
Здесь изменение count перерисовывает Text.