galex
07/19/2020, 3:55 PM@Composable
fun CalculatorScreen() {
val calculatorState by state { CalculatorState() }
Column {
CalculatorResultsRow(Calculator.calculate(calculatorState))
VerticalScroller {
Column {
SliderFieldView(
field = SliderField.NUMBER_OF_BALLS,
onValueChanged = { calculatorState.numberOfBalls = it })
SliderFieldView(
field = SliderField.WEIGHT_PER_BALL,
onValueChanged = { calculatorState.weightPerBall = it })
SliderFieldView(
field = SliderField.WATER,
onValueChanged = { calculatorState.water = it })
SliderFieldView(
field = SliderField.SALT,
onValueChanged = { calculatorState.salt = it })
}
}
OutlinedButton(onClick = { Log.d("CalculatorScreen", Calculator.calculate(calculatorState).toString())}, modifier = Modifier.fillMaxWidth()) {
Text(text = "Save")
}
}
}
I would have expected CalculatorResultsRow
to get updated with the new values every time the state changes, but it is not the case.
A change of value on onValueChanged
doesn’t mean the tree is re-rendered?
What am I missing?