---
title: Controls and indicators
framework: swiftui
role: collectionGroup
role_heading: API Collection
path: swiftui/controls-and-indicators
---

# Controls and indicators

Display values and get user selections.

## Overview

Overview SwiftUI provides controls that enable user interaction specific to each platform and context. For example, people can initiate events with buttons and links, or choose among a set of discrete values with different kinds of pickers. You can also display information to the user with indicators like progress views and gauges.

Use these built-in controls and indicators when composing custom views, and style them to match the needs of your app’s user interface. For design guidance, see Menus and actions, Selection and input, and Status in the Human Interface Guidelines.

## Topics

### Creating buttons

- [Button](swiftui/button.md)
- [buttonStyle(_:)](swiftui/view/buttonstyle(_:).md)
- [buttonBorderShape(_:)](swiftui/view/buttonbordershape(_:).md)
- [ButtonBorderShape](swiftui/buttonbordershape.md)
- [buttonRepeatBehavior(_:)](swiftui/view/buttonrepeatbehavior(_:).md)
- [ButtonRepeatBehavior](swiftui/buttonrepeatbehavior.md)
- [buttonRepeatBehavior](swiftui/environmentvalues/buttonrepeatbehavior.md)
- [buttonSizing(_:)](swiftui/view/buttonsizing(_:).md)
- [ButtonSizing](swiftui/buttonsizing.md)
- [ButtonRole](swiftui/buttonrole.md)

### Creating special-purpose buttons

- [EditButton](swiftui/editbutton.md)
- [PasteButton](swiftui/pastebutton.md)
- [RenameButton](swiftui/renamebutton.md)

### Linking to other content

- [Link](swiftui/link.md)
- [ShareLink](swiftui/sharelink.md)
- [SharePreview](swiftui/sharepreview.md)
- [TextFieldLink](swiftui/textfieldlink.md)
- [HelpLink](swiftui/helplink.md)

### Getting numeric inputs

- [Slider](swiftui/slider.md)
- [Stepper](swiftui/stepper.md)
- [Toggle](swiftui/toggle.md)
- [toggleStyle(_:)](swiftui/view/togglestyle(_:).md)

### Choosing from a set of options

- [Picker](swiftui/picker.md)
- [pickerStyle(_:)](swiftui/view/pickerstyle(_:).md)
- [horizontalRadioGroupLayout()](swiftui/view/horizontalradiogrouplayout().md)
- [defaultWheelPickerItemHeight(_:)](swiftui/view/defaultwheelpickeritemheight(_:).md)
- [defaultWheelPickerItemHeight](swiftui/environmentvalues/defaultwheelpickeritemheight.md)
- [paletteSelectionEffect(_:)](swiftui/view/paletteselectioneffect(_:).md)
- [PaletteSelectionEffect](swiftui/paletteselectioneffect.md)

### Choosing dates

- [DatePicker](swiftui/datepicker.md)
- [datePickerStyle(_:)](swiftui/view/datepickerstyle(_:).md)
- [MultiDatePicker](swiftui/multidatepicker.md)
- [calendar](swiftui/environmentvalues/calendar.md)
- [timeZone](swiftui/environmentvalues/timezone.md)

### Choosing a color

- [ColorPicker](swiftui/colorpicker.md)

### Indicating a value

- [Gauge](swiftui/gauge.md)
- [gaugeStyle(_:)](swiftui/view/gaugestyle(_:).md)
- [ProgressView](swiftui/progressview.md)
- [progressViewStyle(_:)](swiftui/view/progressviewstyle(_:).md)
- [DefaultDateProgressLabel](swiftui/defaultdateprogresslabel.md)
- [DefaultButtonLabel](swiftui/defaultbuttonlabel.md)

### Indicating missing content

- [ContentUnavailableView](swiftui/contentunavailableview.md)

### Providing haptic feedback

- [sensoryFeedback(_:trigger:)](swiftui/view/sensoryfeedback(_:trigger:).md)
- [sensoryFeedback(trigger:_:)](swiftui/view/sensoryfeedback(trigger:_:).md)
- [sensoryFeedback(_:trigger:condition:)](swiftui/view/sensoryfeedback(_:trigger:condition:).md)
- [SensoryFeedback](swiftui/sensoryfeedback.md)

### Sizing controls

- [controlSize(_:)](swiftui/view/controlsize(_:).md)
- [controlSize](swiftui/environmentvalues/controlsize.md)
- [ControlSize](swiftui/controlsize.md)

## See Also

### Views

- [View fundamentals](swiftui/view-fundamentals.md)
- [View configuration](swiftui/view-configuration.md)
- [View styles](swiftui/view-styles.md)
- [Animations](swiftui/animations.md)
- [Text input and output](swiftui/text-input-and-output.md)
- [Images](swiftui/images.md)
- [Menus and commands](swiftui/menus-and-commands.md)
- [Shapes](swiftui/shapes.md)
- [Drawing and graphics](swiftui/drawing-and-graphics.md)
