iOS使用步进器控制滑块值和文本标签值
我已经有一个滑块来控制文本标签的输出。iOS使用步进器控制滑块值和文本标签值
-(IBAction)mySlider:(UISlider *)sender
{
_myTextLabel.text = [NSString stringWithFormat:@"%i", (int) sender.value];
}
但是,我也想要一个步进器能够改变滑块的位置。所以,如果滑块已设置为50,并且文本标签显示为50,我希望步进器增加到51,52,53等。有没有人知道代码要做到这一点?谢谢!
您需要保留参考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];
}
感谢您的代码,但我有一个快速的newb问题:我如何为UISlider做参考?每次我为滑块创建一个方法时,我都无法在他们的{}括号之外引用它们,但我不知道如何指向它们。 – jake9115 2013-05-06 03:59:36
您只需在.h文件中执行@property (非原子,保留)UISlider *
只需连接来自IB的控件,将控件的属性与IBOutlet连接即可。上述步进,分,最大和步进的设置可以从IB本身进行设置。 – Anupdas 2013-05-06 04:03:11
你的问题是什么? – rmaddy 2013-05-06 03:49:08
所以,如果我正确阅读这个,你几乎想要UISlider更新标签,然后步进更新滑块? – user2277872 2013-05-06 03:50:54
是的,这是正确的,我的问题是这样做的代码是什么......基本上,如果用户试图选择一个特定的数字,他们可以使用滑块作为粗调,然后使用增量器得到确切的数字 – jake9115 2013-05-06 03:51:50