0
0
iOS Swiftmobile~5 mins

Slider in iOS Swift

Choose your learning style9 modes available
Introduction

A slider lets users pick a value by moving a thumb along a track. It's easy and quick for choosing numbers or settings.

Adjusting volume or brightness on a device.
Selecting a rating or score in a survey app.
Choosing a time or duration in a timer app.
Setting a price range in a shopping app.
Syntax
iOS Swift
let slider = UISlider()
slider.minimumValue = 0
slider.maximumValue = 100
slider.value = 50
slider.addTarget(self, action: #selector(sliderChanged(_:)), for: .valueChanged)

Use minimumValue and maximumValue to set the slider range.

Use addTarget to run code when the slider moves.

Examples
A slider from 0 to 10 starting at 5.
iOS Swift
let slider = UISlider()
slider.minimumValue = 0
slider.maximumValue = 10
slider.value = 5
Slider only sends events when user stops dragging.
iOS Swift
slider.isContinuous = false
Change the slider track color to red.
iOS Swift
slider.tintColor = UIColor.red
Sample App

This app shows a slider in the center. When you move it, the label below updates with the slider's current value.

iOS Swift
import UIKit

class ViewController: UIViewController {
  let slider = UISlider()
  let label = UILabel()

  override func viewDidLoad() {
    super.viewDidLoad()
    view.backgroundColor = .white

    slider.minimumValue = 0
    slider.maximumValue = 100
    slider.value = 50
    slider.translatesAutoresizingMaskIntoConstraints = false
    slider.addTarget(self, action: #selector(sliderChanged(_:)), for: .valueChanged)

    label.text = "Value: 50"
    label.translatesAutoresizingMaskIntoConstraints = false
    label.textAlignment = .center

    view.addSubview(slider)
    view.addSubview(label)

    NSLayoutConstraint.activate([
      slider.centerXAnchor.constraint(equalTo: view.centerXAnchor),
      slider.centerYAnchor.constraint(equalTo: view.centerYAnchor),
      slider.widthAnchor.constraint(equalToConstant: 300),

      label.topAnchor.constraint(equalTo: slider.bottomAnchor, constant: 20),
      label.centerXAnchor.constraint(equalTo: view.centerXAnchor)
    ])
  }

  @objc func sliderChanged(_ sender: UISlider) {
    let currentValue = Int(sender.value)
    label.text = "Value: \(currentValue)"
  }
}
OutputSuccess
Important Notes

Use isContinuous to control if value changes update continuously or only when user stops dragging.

Always set translatesAutoresizingMaskIntoConstraints to false when using Auto Layout in code.

Slider values are Float, so convert to Int if you want whole numbers.

Summary

Sliders let users pick a value by sliding a thumb along a track.

Set minimum, maximum, and initial value to control the range.

Use target-action to respond when the slider value changes.