如何使用UIStepper
我正在尝试使用UIStepper
来递增或递减整数,但“ – ”和“+”都会增加整数! 我怎样才能识别“+”和“ – ”button?
在UIStepper
头文件中有两个UIButton
:
UIButton *_plusButton; UIButton *_minusButton;
例如 :
- (IBAction)changeValue:(id)sender { UIStepper *stepper = (UIStepper *) sender; stepper.maximumValue = 10; stepper.minimumValue = 0; if (stepper) { integer++; [label setText:[NSString stringWithFormat:@"%d",integer]]; } else { integer--; [label setText:[NSString stringWithFormat:@"%d",integer]]; } }
你应该忽略ivars。 他们不会帮助你。
UIStepper
具有value
属性,您可以查询以确定当前值是什么。 所以你的方法可能只是:
- (IBAction)valueChanged:(UIStepper *)sender { double value = [sender value]; [label setText:[NSString stringWithFormat:@"%d", (int)value]]; }
UIStepper返回Double值,对于swift版本这样做:
@IBAction func stepperValue(sender: UIStepper) { print("the stepper value is :\(sender.value)") }
以UIStepper的出口:
@property (strong, nonatomic) IBOutlet UIStepper *stepper;
在viewDidLoad方法中:
self.stepper.wraps=YES;
如果是,则值从min < – > max换行。 默认= NO
self.stepper.autorepeat=YES;
如果是,请反复按住变更值。 默认= YES
将初始值设置为0。
NSUInteger value= self.stepper.value; self.label.text= [NSString stringWithFormat:@"%02lu",(unsigned long)value];
设置最大值
self.stepper.maximumValue=50;
采取UIStepper的行动:
- (IBAction)valueDidChanged:(UIStepper *)sender { //Whenever the stepper value increase and decrease the sender.value fetch the curent value of stepper NSUInteger value= sender.value; self.label.text= [NSString stringWithFormat:@"%02lu",value]; }
尝试
stepper.maximumValue = 10.0; stepper.minimumValue = 0.0;