diff --git a/SwiftRangeSlider/RangeSlider.swift b/SwiftRangeSlider/RangeSlider.swift index a2b4ccd..2b6459e 100644 --- a/SwiftRangeSlider/RangeSlider.swift +++ b/SwiftRangeSlider/RangeSlider.swift @@ -191,6 +191,14 @@ import QuartzCore } + ///Whether the knows are highlightable. `true` by default. + @IBInspectable open var knobHighlightable: Bool = true { + didSet { + upperKnob.highlightable = knobHighlightable + lowerKnob.highlightable = knobHighlightable + } + } + var previousLocation = CGPoint() var previouslySelectedKnob = Knob.Neither @@ -251,11 +259,13 @@ import QuartzCore lowerKnob.frame = CGRect(x: 0, y: 0, width: KnobSize, height: KnobSize) lowerKnob.rangeSlider = self + lowerKnob.highlightable = knobHighlightable lowerKnob.contentsScale = UIScreen.main.scale layer.addSublayer(lowerKnob) upperKnob.frame = CGRect(x: 0, y: 0, width: KnobSize, height: KnobSize) upperKnob.rangeSlider = self + upperKnob.highlightable = knobHighlightable upperKnob.contentsScale = UIScreen.main.scale layer.addSublayer(upperKnob) diff --git a/SwiftRangeSlider/RangeSliderKnob.swift b/SwiftRangeSlider/RangeSliderKnob.swift index 38be022..b238e02 100644 --- a/SwiftRangeSlider/RangeSliderKnob.swift +++ b/SwiftRangeSlider/RangeSliderKnob.swift @@ -24,6 +24,8 @@ public enum KnobAnchorPosition { class RangeSliderKnob: CALayer { static var KnobDelta: CGFloat = 2.0 + var highlightable: Bool = true + var highlighted: Bool = false { didSet { if let superLayer = superlayer, highlighted { @@ -54,7 +56,7 @@ class RangeSliderKnob: CALayer { ctx.addPath(knobPath.cgPath) ctx.strokePath() - if highlighted { + if highlighted && highlightable { ctx.setFillColor(UIColor(white: 0.0, alpha: 0.1).cgColor) ctx.addPath(knobPath.cgPath) ctx.fillPath()