objective-c uislider

objective c - ¿Qué se llama cuando cambia un valor de UISlider?



uistepper (3)

¿Se llama un método cuando UISlider el value un UISlider ? Quiero poder actualizar un valor basado en el valor de UISliders , pero solo cuando cambie ...

Gracias por cualquier ayuda.


En IB, puede conectar un IBAction al Value Changed event o en el código add target / action para UIControlEventValueChanged . Por ejemplo:

[mySlider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged]; - (IBAction)sliderValueChanged:(UISlider *)sender { NSLog(@"slider value = %f", sender.value); }

Tenga en cuenta que si desea que el valor cambie los eventos mientras el usuario se sliding , asegúrese de que la continuous property del slider también esté configurada. Por otro lado, si no desea que el evento se dispare debido a que el usuario se está sliding y solo cuando termine de deslizarse, configure continuo en NO (o desmarque en IB).


Para Swift 3

//There is your slider @IBOutlet weak var mSlider: UISlider! //add a target on your slider on your viewDidLoad for example self.mSlider.addTarget(self, action: #selector(MyClass.onLuminosityChange), for: UIControlEvents.valueChanged) //callback called when value change func onLuminosityChange(){ let value = self.mSlider.value }


ViewController.h @property (strong, nonatomic) IBOutlet UIProgressView *prgs; - (IBAction)slider:(id)sender; @property (strong, nonatomic) IBOutlet UISlider *slider1; @property (strong, nonatomic) IBOutlet UILabel *lbl; ViewController.m - (IBAction)slider:(id)sender { self.prgs.progress=self.slider1.value; self.lbl.text = [NSString stringWithFormat:@"%f", self.slider1.value]; }