You can use CompactSlider to manage single values, ranges, or multiple values. Import CompactSlider to access the components.
Single Value
Use value: $binding for a single scalar value.
Range and Steps
Use in: range and step: value to constrain the slider and snap to increments.
Range Selection
Use from: $minBinding and to: $maxBinding to select a range between two values.
Multiple Values
Use values: $arrayBinding to manage an array of multiple markers.
import CompactSlider
// Single value
@State private var volume: Double = 0.5
CompactSlider(value: $volume)
.frame(height: 44)
// With range and steps
@State private var brightness: Double = 50
CompactSlider(value: $brightness, in: 0...100, step: 5)
.frame(height: 44)
// Range selection
@State private var minPrice: Double = 20
@State private var maxPrice: Double = 80
CompactSlider(from: $minPrice, to: $maxPrice, in: 0...100)
.frame(height: 44)
// Multiple values
@State private var markers: [Double] = [0.2, 0.5, 0.8]
CompactSlider(values: $markers)
.frame(height: 44)