You already know how to make code components customizable with property controls and add animations to them. Now we’ll make components that do all that and can communicate with other elements on the screen. Interactive components that you can reuse in different prototypes.
A smart component has:
An internal memory, so it can remember things like:
- whether it’s on or off (when the component is a switch or checkbox);
- the text the user entered (for an input field); or
- its current value (when it’s a slider).
This makes it possible to listen to the component with an override, so you can:
- trigger an animation when the switch is flipped;
- save the text that was typed in the input field; or
- display the current value of the slider somewhere on the screen.
This makes the component even more composable because it will let you:
- set the initial on/off state of the switch, or flip it with an override;
- dynamically change the text in the input field; and
- set the initial position of the slider, or move its knob programmatically.
- In this Smart Components section you can learn more about:
- If you’ve created components before and just need a reminder of how things are done: check the Simple But Smart example.
- And in iOS Segmented Control we build a complete smart component from scratch (one that’s also a public package).