SectionedSlider

iOS watchOS

Platform
CocoaPods
Carthage Compatible

Control Center Slider

Requirements

  • iOS 8.0+
  • Swift 3.0+
  • Xcode 8.0+

Installation

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

CocoaPods 1.1.0+ is required to build SectionedSlider 0.0.5+.

To integrate SectionedSlider into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!

pod 'SectionedSlider', '~> 0.0.5'

Then, run the following command:

$ pod install

Carthage

Carthage is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate SectionedSlider into your Xcode project using Carthage, specify it in your Cartfile:

github "LeonardoCardoso/SectionedSlider" ~> 0.0.5

Manually

If you prefer not to use either of the aforementioned dependency managers, you can integrate SectionedSlider into your project manually.

Usage

You can use a SectionedSlider on Storyboards or, if you want to do it programatically, you can create it just like you create a UIView:

SectionedSlider(
    frame: CGRect(x: 0, y: 0, width: 78, height: 200), // Choose a 15.6 / 40 ration for width/height
    selectedSection: 3, // Initial selected section
    sections: 10 // Number of sections. Choose between 2 and 20
)

Palette

You also can customize the colors of the button on its constructor.

SectionedSlider(
    frame: wrapView.frame,
    selectedSection: 3,
    sections: 10,
    palette: Palette(
        viewBackgroundColor: UIColor?,
        sliderBackgroundColor: UIColor?,
        sliderColor: UIColor?
    )
)

palette

Delegate

You can watch changes of state by implementing the protocol:

public protocol SectionedSliderDelegate {
    
	func sectionChanged(slider: SectionedSlider, selected: Int)
    
}

Storyboard

Last but not least, you can customize SectionedSlider properties right from Interface Builder or Storyboards.

storyboard

License

SectionedSlider is released under the MIT license. See LICENSE for details.

GitHub

https://github.com/LeonardoCardoso/SectionedSlider