Toggle

Best Practices
Use for binary states. Toggles are best suited for settings that can be either enabled or disabled, not for multiple-choice scenarios.
Label clearly. Every toggle should have a concise label indicating what’s being turned on or off (e.g., “Wi-Fi,” “Notifications”).
Provide immediate feedback. Tapping a toggle should result in a clear visual change (e.g., color shift) so users know the new state right away.
Avoid confusion. When a toggle state has substantial consequences (like deleting data or switching accounts), consider an extra confirmation step or a more explicit control.
Style
Toggles generally resemble a small switch, showing distinct visuals for on/off states:
Track and thumb. A typical mobile toggle has a round thumb that slides along a short, rounded track.
Color differentiation. Use a distinct color for the “on” position (often green or the app’s accent) and a neutral or gray color for “off.”
Consistent sizing. Aim for at least 44×44 pt of tappable area on mobile, making sure the toggle is easy to engage on smaller screens.
Smooth transitions. A subtle animation when switching states helps users perceive the change without feeling abrupt.
Content
Toggles generally present a short, descriptive label and an optional sub-label or helper text when extra clarification is necessary:
Label placement. For left-to-right languages, place the label to the left of the toggle or above it.
Helper text. If a feature is complex, a small note underneath can indicate its function or potential side effects (e.g., “May use additional data”).
On/Off indicators. Some designs show text (“On,” “Off”) inside the toggle track. Keep text minimal to avoid clutter.
Role
Toggles provide quick, direct control over an app feature:
Settings. Commonly used in preferences or configurations where users can enable or disable functionality (e.g., “Dark Mode,” “Location Services”).
Immediate state changes. Toggles are associated with changes that take effect instantly, without further input required.
Contextual usage. They can appear on forms, modal settings pages, or inline with other controls, maintaining the same visual and functional approach across the app.