如何在Swift中自行构建UISlider自动幻灯片?

时间:2016-11-18 06:39:17

标签: ios swift uislider

有目的地,我想设置UISlider将自动自动滑动以在视频播放器中使用。 我尝试通过研究找到解决方案并遵循该代码,但它仍然不起作用。每个人都有这方面的任何解决方案,这是我的代码。

override func awakeFromNib() {
      self.sldTime.maximumValue = 10
      self.sldTime.minimumValue = 0
      self.sldTime.continuous = true
      self.sldTime.addTarget(self, action: #selector(self.sliderAutoChange), forControlEvents: .ValueChanged)
}

func sliderAutoChange() {
    let index = Float(self.sldTime.value + 1)   // increase by 1
    self.sldTime.setValue(index, animated: false)
    print("index \(index)")
} 

当我调试它时,似乎 sliderAutoChange()函数不会调用。

1 个答案:

答案 0 :(得分:1)

如果您想自动更改Slider值,则可以像这样使用NSTimer

override func awakeFromNib() {
    self.sldTime.maximumValue = 10
    self.sldTime.minimumValue = 0
    self.sldTime.continuous = true

    NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: #selector(self.updateSlider(_:), userInfo: nil, repeats: true)      
}

func updateSlider(timer: NSTimer) {

    let index = Float(self.sldTime.value + 1)   // increase by 1
    self.sldTime.setValue(index, animated: true)
    print("index \(index)")
    if self.sldTime.value >= self.sldTime.maximumValue {
          timer.invalidate()
    }
}