2017-08-16 70 views

回答

0

你應該保持一個「舊值」,這樣就可以把它比作「新價值」,然後簡單地將其設置回。

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 
     } 
    } 
} 
0

保持你的舊值和設定初始值,因爲你需要:

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 
    } 
}