Tomas Gordian
03/24/2022, 12:00 PMclass MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val stateFlow = MutableStateFlow(State(0, 0))
setContent {
MyComposeTheme {
val state by stateFlow.collectAsState()
Column() {
FirstButton(
text = state.firstNumber.toString()
) {
stateFlow.value = stateFlow.value.copy(firstNumber = Random.nextInt())
}
SecondButton(
text = state.secondNumber.toString()
) {
stateFlow.value = stateFlow.value.copy(secondNumber = Random.nextInt())
}
}
}
}
}
}
@Composable
private fun FirstButton(
text: String,
onClick: () -> Unit
) {
Button(
onClick = onClick
) {
Text(text = text)
}
}
@Composable
private fun SecondButton(
text: String,
onClick: () -> Unit
) {
Button(
onClick = onClick
) {
Text(text = text)
}
}
data class State(
val firstNumber: Int,
val secondNumber: Int
)
Tobias Gronbach
03/24/2022, 12:42 PMZach Klippenstein (he/him) [MOD]
03/24/2022, 3:15 PMTomas Gordian
03/24/2022, 3:36 PMZach Klippenstein (he/him) [MOD]
03/24/2022, 3:39 PMTobias Gronbach
03/24/2022, 3:44 PMTomas Gordian
03/24/2022, 4:02 PM