Managing State of Your Composable Functions
In Chapter 4, Laying Out UI Elements in Compose, I showed you how to set the red, green, and blue portions of a color by dragging sliders. We used state to store the color portions and passed simple values and callbacks that are invoked when value changes are due to composable functions. Quite a few other sample apps of the previous chapters dealt with state too. In fact, reacting to state changes is critical to how modern mobile apps work.
So far, I have described state as data that can change over time. You learned about a few important functions – for example, remember { }
and mutableStateOf()
. I also briefly touched on a concept called state hoisting.
This chapter builds on these foundations. For example, you will understand the difference between stateless and stateful composables, and when to choose which. Also, I will show you how events should flow in a well-behaved Compose app.
The main sections of this chapter are...