假设我有 3UIStepper
秒。
当我改变一个的值时,其他步进器的值会根据一个公式而改变。
步进器 1 的值为 10。
步进器 2 的值为 5。
步进器 3 的值为 3。
如果我更改步进器 10 +/- 1,它可能会更改步进器 2 +/- 1 中的值。
这可能吗?
这是绝对可能的。
你可以想象这样的场景:
UIStepper *stepperOne = [[UIStepper alloc] initWithFrame:frame];
[stepperOne addTarget:self action:@selector(stepperOneChanged:) forControlEvents:UIControlEventValueChanged];
- (void)stepperOneChanged:(UIStepper*)stepperOne{
//This method would be called on the target of your first stepper on UIControlEventsValueChanged
//Decrease the value by 1
stepperTwo.value --;
//OR
//Increase the value by 1
stepperTwo.value ++;
}
override func viewDidLoad() {
super.viewDidLoad()
let stepper = UIStepper(frame: CGRect(x: 100, y: 200, width: 0, height: 0))
stepper.wraps = true
stepper.autorepeat = true
stepper.maximumValue = 20
stepper.addTarget(self, action: #selector(stepperValueChanged(_:)), for: .valueChanged)
view.addSubview(stepper)
}
@objc func stepperValueChanged(_ stepper: UIStepper) {
print("Chnaged Value: \(stepper.value)")
stepper.value += 2
print("Chnaged Value: \(stepper.value)")
}