我在项目中使用Range slider。 How use it.
我想在用户完成移动范围滑块时检测到。
我尝试使用函数SliderAction(sender: RangeSlider)
,但我得到了滑块中的每个移动点。我想我需要使用这个函数:func endTrackingWithTouch(touch: UITouch?, withEvent event: UIEvent?)
,但它不起作用。
我该怎么做?
答案 0 :(得分:4)
要检测用户何时完成移动范围滑块,您可以在滑块上添加一个控制器,您可以以编程方式添加它:
func sliderDidEndSliding(sender: UISlider) {
}
然后你必须按照接收方法做你的逻辑。
staging
答案 1 :(得分:1)
对于swift 3,我使用了这个:
mySlider.addTarget(self, action: #selector(self.sliderDidEndSliding), for: .touchUpInside)
func sliderDidEndSliding() {
// process stuff
}
读数值用:
完成@IBAction func mySlider(_ sender: Any) {
}
答案 2 :(得分:0)
基于此示例viewcontroller,您应该检查更改的值sender.selectedMax
应该等于您在该幻灯片视图中为该滑块视图设置的值
答案 3 :(得分:0)
您需要覆盖 endTrackingWithTouch。当跟踪由底层机器结束时,它会被调用,让你有机会做出回应。
请确保在你的endTrackingWithTouch版本中调用它的super,以便父类可以做到这一点。
答案 4 :(得分:0)
快捷键4
slider.addTarget(self, action: #selector(sliderDidEndSliding), for: .touchUpInside)
并添加
@objc func sliderDidEndSliding(sender: UISlider) {
}