All Projects → WorldDownTown → Rangeseekslider

WorldDownTown / Rangeseekslider

Licence: other
RangeSeedSlider provides a customizable range slider like a UISlider.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Rangeseekslider

Tap water
【声明:未发布前,勿使用,勿star,预计2020年11月底发布】Flutter tab_bar组件,支持中间带加号按钮的TabBar,支持Lottie动画。iTeaTime(技术清谈)团队出品。Highly customizable tabBar and tabBarController for Flutter
Stars: ✭ 52 (-90.08%)
Mutual labels:  xcode, uikit
Swifterswift
A handy collection of more than 500 native Swift extensions to boost your productivity.
Stars: ✭ 10,706 (+1943.13%)
Mutual labels:  xcode, uikit
Dtgradientbutton
Easy way to set gradient background to your buttons.
Stars: ✭ 76 (-85.5%)
Mutual labels:  xcode, uikit
Cyltabbarcontroller
[EN]It is an iOS UI module library for adding animation to iOS tabbar items and icons with Lottie, and adding a bigger center UITabBar Item. [CN]【中国特色 TabBar】一行代码实现 Lottie 动画TabBar,支持中间带+号的TabBar样式,自带红点角标,支持动态刷新。【iOS13 & Dark Mode & iPhone XS MAX supported】
Stars: ✭ 6,605 (+1160.5%)
Mutual labels:  xcode, uikit
Swiftuikitview
Easily use UIKit views in your SwiftUI applications. Create Xcode Previews for UIView elements
Stars: ✭ 398 (-24.05%)
Mutual labels:  xcode, uikit
Bfkit Swift
BFKit-Swift is a collection of useful classes, structs and extensions to develop Apps faster.
Stars: ✭ 963 (+83.78%)
Mutual labels:  xcode, uikit
Ttsegmentedcontrol
An elegant, animated and customizable segmented control for iOS created by Tapptitude
Stars: ✭ 471 (-10.11%)
Mutual labels:  xcode, uikit
Bfkit
BFKit is a collection of useful classes and categories to develop Apps faster.
Stars: ✭ 811 (+54.77%)
Mutual labels:  xcode, uikit
Stepslider
StepSlider its custom implementation of slider such as UISlider for preset integer values.
Stars: ✭ 391 (-25.38%)
Mutual labels:  xcode, uikit
Mhsoftui
Extension for Neumorphic Soft UI effect in Swift
Stars: ✭ 151 (-71.18%)
Mutual labels:  xcode, uikit
Swiftui
A collaborative list of awesome SwiftUI resources. Feel free to contribute!
Stars: ✭ 774 (+47.71%)
Mutual labels:  xcode, uikit
Sourceful
A syntax highlighting source editor for iOS and macOS using UITextView and NSTextView.
Stars: ✭ 449 (-14.31%)
Mutual labels:  xcode, uikit
Ios Learning Materials
📚Curated list of articles, web-resources, tutorials and code repositories that may help you dig a little bit deeper into iOS [and Apple Platforms].
Stars: ✭ 1,380 (+163.36%)
Mutual labels:  xcode, uikit
Dckit
Set of iOS controls with useful IBInspectable properties. Written on Swift.
Stars: ✭ 144 (-72.52%)
Mutual labels:  xcode, uikit
Squishbutton
A button that squishes when pressed. As seen in the Clips app.
Stars: ✭ 401 (-23.47%)
Mutual labels:  xcode, uikit
Swiftai
SwiftAI, write Swift code smart. SwiftAI can generate Model class from JSON now. Codable and HandyJSON is supported. More features will be add.
Stars: ✭ 470 (-10.31%)
Mutual labels:  xcode, uikit
Jtsage Datebox
A multi-mode date and time picker for Bootstrap (3&4), jQueryMobile, Foundation, Bulma, FomanticUI, and UIKit (or others)
Stars: ✭ 481 (-8.21%)
Mutual labels:  uikit
Markupkit
Declarative UI for iOS and tvOS
Stars: ✭ 508 (-3.05%)
Mutual labels:  uikit
Xcprojectlint
A security blanket for Xcode project files
Stars: ✭ 478 (-8.78%)
Mutual labels:  xcode
Brisk
A proof of concept scripting library for Swift
Stars: ✭ 478 (-8.78%)
Mutual labels:  xcode

RangeSeekSlider

Join the chat at https://gitter.im/WorldDownTown/RangeSeekSlider

License Language Carthage compatible CocoaPods compatible Downloads with CocoaPods Awesome

Overview

RangeSeekSlider provides a customizable range slider like a UISlider. This library is based on TomThorpe/TTRangeSlider (Objective-C) and made with Swift.

demo

Demo

You can try on Appetize.io

or

Build Xcode project.

  1. Open RangeSeekSlider.xcodeproj.
  2. Change Scheme to RangeSeekSliderDemo
  3. Run

Usage

Add the RangeSeekSlider like you would with any other UIControl. Either:

  • Add a view in your storyboard/xib and change its Class and Module to RangeSeekSlider. You can set all the properties in the Attributes Inspector and see a live preview:

Interface Builder Module Screenshot

Interface Builder Screenshot

or

  • Create the RangeSeekSlider in code using RangeSeekSlider() then add it as a subview to your code and set the relevant autolayout properties or frame.

The default slider ranges from 0.0 -> 100.0 and has 10.0 preselected as the minimum, and 90.0 as the maximum.

Values that the user has selected are exposed using the selectedMinValue and selectedMaxValue properties. You can also use these properties to change the selected values programatically if you wish.

Other customisation of the control is done using the following properties:

tintColor

The tintColor property (which you can also set in Interface Builder) sets the overall color of the control, including the color of the line, the two handles, and the labels.

It is safe to change the tintColor at any time, if the control is currently visible the color change will be animated into the new color.

minValue

The minimum possible value to select in the range

maxValue

The maximum possible value to select in the range

selectedMinValue

The preselected minumum value (note: This should be less than the selectedMaxValue)

selectedMaxValue

The preselected maximum value (note: This should be greater than the selectedMinValue)

minLabelFont

The font of the minimum value text label. If not set, the default is system font size 12.0.

maxLabelFont

The font of the maximum value text label. If not set, the default is system font size 12.0.

numberFormatter

Each handle in the slider has a label above it showing the current selected value. If you change number format, update each properties of NumberFormatter. By default, this is displayed as a decimal format.

hideLabels

When set to true the labels above the slider controls will be hidden. Default is false.

labelsFixed

Fixes the labels above the slider controls. If true, labels will be fixed to both ends. Otherwise labels will move with the handles. Default is false.

minDistance

The minimum distance the two selected slider values must be apart. Default is 0.0.

maxDistance

The maximum distance the two selected slider values must be apart. Default is CGFloat.greatestFiniteMagnitude.

minLabelColor

The color of the minimum value text label. If not set, the default is the tintColor.

maxLabelColor

The color of the maximum value text label. If not set, the default is the tintColor.

handleColor

If set it will update the color of the handles. Default is tintColor.

colorBetweenHandles

The colorBetweenHandles property sets the color of the line between the two handles.

handleBorderColor

If set it will update the color of the handle borders. Default is tintColor.

initialColor

The color of the entire slider when the handle is set to the minimum value and the maximum value. Default is nil.

disableRange

If true, the control will mimic a normal slider and have only one handle rather than a range.

In this case, the selectedMinValue will be not functional anymore. Use selectedMaxValue instead to determine the value the user has selected.

enableStep

If true the control will snap to point at each step (property) between minValue and maxValue. Default value is disabled.

step

If enableStep is true, this controls the value of each step. E.g. if this value is 20, the control will snap to values 20,40,60...etc. Set this is you enable the enableStep property.

handleImage

If set the image passed will be used for the handles.

handleDiameter

If set it will update the size of the handles. Default is 16.0.

selectedHandleDiameterMultiplier

If set it update the scaling factor of the handle when selected. Default is 1.7. If you don't want any scaling, set it to 1.0.

lineHeight

Set the height of the line. It will automatically round the corners. If not specified, the default value will be 1.0.

handleBorderWidth

If set it will update the size of the handle borders. Default is 0.0

labelPadding

If set it will update the size of the padding between label and handle. Default is 8.0

minLabelAccessibilityLabel

The label displayed in accessibility mode for minimum value handler. If not set, the default is empty String.

maxLabelAccessibilityLabel

The label displayed in accessibility mode for maximum value handler. If not set, the default is empty String.

minLabelAccessibilityHint

The brief description displayed in accessibility mode for minimum value handler. If not set, the default is empty String.

maxLabelAccessibilityHint

The brief description displayed in accessibility mode for maximum value handler. If not set, the default is empty String.

func setupStyle()

When subclassing RangeSeekSlider and setting each item in setupStyle(), the design is reflected in Interface Builder as well. setup_style.gif

Requirements

  • Swift 3.0+
  • iOS 9.0+

Installation

Carthage

RangeSeekSlider is available through Carthage. To install it, simply add the following line to your Cartfile:

github "WorldDownTown/RangeSeekSlider"

⚠️Warning⚠️

When installed with Carthage, @IBDesignable can't be available (Carthage Issue). But we have a workaround is shown in Stack Overflow. It is able to use @IBDesignable by subclassing RangeSeekSlider.

@IBDesignable class CustomRangeSeekSlider: RangeSeekSlider {}

CocoaPods

RangeSeekSlider is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'RangeSeekSlider'

Manually

Download and drop RangeSeekSlider/Sources folder in your project.

Author

WorldDownTown, [email protected]

License

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].