【问题标题】:Detect a direction of uislider thumb drag in swift 3在swift 3中检测uislider拇指拖动的方向
【发布时间】:2017-08-16 16:49:05
【问题描述】:

我需要禁用 UISlider 的拖动拇指向右方向并启用它向左拖动。如何在 Swift 3 中做到这一点?

提前致谢

【问题讨论】:

  • 滑块从哪里开始?极端吧?
  • 从最左边

标签: ios swift swift3 uislider drag


【解决方案1】:

您应该维护一个“旧值”,以便您可以将其与“新值”进行比较,然后简单地将其设置回来。

class ViewController {

    @IBOutlet weak var slider: UISlider!
    var value: Float = 0.0

    override func viewDidLoad() {
        super.viewDidLoad()

        value = slider.value
    }

    @IBAction func sliderValueChanged(_ sender: UISlider, forEvent event: UIEvent) {

        if sender.value > self.value {
            sender.setValue(self.value, animated: false)
        } else {
            self.value = slider.value
        }
    }
}

【讨论】:

    【解决方案2】:

    保留旧值并根据需要设置初始值:

    class ViewController: UIViewController {
    
        @IBOutlet weak var slider: UISlider!
        var lastValue:Float = 0.0
    
        override func viewDidLoad() {
            super.viewDidLoad()
            lastValue = slider.value
    
        }
    
        @IBAction func slider(_ sender: UISlider) {
            if sender.value > lastValue {
                slider.setValue(lastValue, animated: false)
            }
            lastValue = sender.value
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-05
      • 2021-02-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多