iOS使用步进器控制滑块值和文本标签值

时间:2013-05-06 03:44:37

标签: ios uilabel uislider uistepper

我已经有一个控制文本标签输出的滑块。

-(IBAction)mySlider:(UISlider *)sender
{
    _myTextLabel.text = [NSString stringWithFormat:@"%i", (int) sender.value];
}

但是,我也希望步进器能够改变滑块的位置。因此,如果滑块已设置为50,文本标签显示为50,我希望步进器增加到51,52,53等。有人知道这样做的代码吗?谢谢!

1 个答案:

答案 0 :(得分:3)

您需要保留UISlider的参考。使用valueChanged事件为UIStepper创建一个处理程序。

需要对步进器和滑块进行一些设置

将步进器和滑块的最小值和最大值分别设置为0和100。将步进器的步长设置为1.为步进器和滑块设置相同的默认值。

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.slider.minimumValue = 0;
    self.slider.maximumValue = 100;

    self.stepper.minimumValue = 0;
    self.stepper.maximumValue = 100;
    self.stepper.stepValue = 1;

    self.slider.value = 10;
    self.stepper.value = 10;

}

- (IBAction)stepperValueChanged:(UIStepper *)sender {

    [self.slider setValue:sender.value];

    self.myTextLabel.text = [@((int)sender.value) stringValue];

}

- (IBAction)sliderValueChanged:(UISlider *)sender {

    [self.stepper setValue:sender.value];

    self.myTextLabel.text = [@((int)sender.value) stringValue];
}