2017-08-16 4 views

Répondre

0

Vous devez maintenir une « ancienne valeur » de sorte que vous pouvez le comparer à la « nouvelle valeur », puis régler simplement le dos.

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

Gardez votre ancienne valeur et définir la valeur initiale que vous avez besoin:

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