Вызывается вызов метода при изменении UISlider
value
? Я хочу иметь возможность обновлять значение, основанное на значении UISliders
, но только тогда, когда оно изменяется...
Спасибо за любую помощь.
Вызывается вызов метода при изменении UISlider
value
? Я хочу иметь возможность обновлять значение, основанное на значении UISliders
, но только тогда, когда оно изменяется...
Спасибо за любую помощь.
В IB вы можете подключить IBAction
к Value Changed event
или в коде добавить цель/действие для UIControlEventValueChanged
. Например:
[mySlider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
- (IBAction)sliderValueChanged:(UISlider *)sender {
NSLog(@"slider value = %f", sender.value);
}
Обратите внимание, что если вы хотите, чтобы события изменения значения, как пользователь, были sliding
, убедитесь, что также установлен slider
continuous property
. С другой стороны, если вы не хотите, чтобы событие срабатывало, когда пользователь sliding
, и только когда они заканчивают скольжение, установите непрерывное значение NO (или снимите флажок в IB).
Для 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];
}