Need help with iOS-Tactile-Slider?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

141 Stars 23 Forks MIT License 62 Commits 0 Opened issues


UIControl slider that can be dragged from any point within its bounds, similar to those in Control Center and

Services available


Need anything else?

Contributors list

# 409,427
62 commits


CI Status Version License Platform

A slider control designed to be easy to grab and use because it can be dragged or tapped from anywhere along its track, similar to the sliders in Control Center and HomeKit. Because this type of slider graphically represents direct manipulation of a value, it should be used for live adjustment of values whose changes can be directly observed in real time (such as audio volume or the brightness of a light).

Animation of TactileSliders in various orientations being clicked and dragged in the iOS simulator, followed by a transition from light to dark appearance


  • Can be dragged or (optionally) tapped to set a value
  • Supports horizontal and vertical orientation in either direction
  • IBDesignable – colors, values, rounded corners, and behavior can be customized in Interface Builder or programatically
  • Supports light & dark appearance using semantic system colors by default (iOS 13+)
  • Adjustable haptic feedback (iOS 10+)
  • VoiceOver support
  • Supports pointer (e.g. trackpad or mouse) based scrolling on iPadOS (iOS 13.4+)


To run the example project, clone the repo, and run

pod install
from the Example directory first.


iOS 8.0+

  • iOS 10.0+ required for haptic feedback
  • iPadOS 13.4+ required for pointer use


TactileSlider is available as a Swift package or through CocoaPods.

To install it using CocoaPods, simply add the following line to your Podfile:

pod 'TactileSlider'


let slider = TactileSlider(frame: someRect)

slider.minimumValue = 1 slider.maximumValue = 10

slider.setValue(3.8, animated: true)

Setting orientation and direction

slider.vertical = true
slider.reverseValueAxis = true

Adjusting behavior

slider.isContinuous = false
slider.enableTapping = false // allow or disallow tapping anywhere on the slider track to instantly set a value
slider.feedbackStyle = .medium // customize haptic feedback
slider.isScrollingEnabled = false // allow or disallow scrolling to adjust the slider using a connected pointing device on iPadOS

Changing colors and appearance

slider.trackBackground = // use translucent black for the slider track
slider.tintColor = UIColor.systemGreen // use dynamic green for the slider thumb
slider.cornerRadius = 12
slider.isPointerInteractionEnabled = true // display a hover effect when under the pointer on iPadOS

Interface Builder

screenshot of Xcode Interface Builder demonstrating a TactileSlider being customized using the graphical interface


Dale Price (@[email protected])


TactileSlider is available under the MIT license. See the LICENSE file for more info.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.