IOS之UIStepper控件详解

在iOS5中新增了一个数字输入控件UIStepper,它可以递进式输入数量。UIStepper继承自UIControl,它主要的事件是UIControlEventValueChanged,每当它的值改变了就会触发这个事件。它的显示效果如下:

它主要有下面几个属性

  • value 当前所表示的值,默认0.0
  • minimumValue 最小可以表示的值,默认0.0
  • maximumValue 最大可以表示的值,默认100.0
  • stepValue 每次递增或递减的值,默认1.0

设置以上几个值,一般就可以很方便的使用了。

1
2
3
4
5
6
7
UIStepper *stepper = [[UIStepper alloc] init];
stepper.minimumValue = 2;
stepper.maximumValue = 5;
stepper.stepValue = 2;
stepper.value = 3;
stepper.center = CGPointMake(160, 240);
[stepper addTarget:self action:@selector(valueChanged:) forControlEvents:UIControlEventValueChanged];

注意:上面我设置stepValue是2,当前value是3,最小值是2。但如果我们点击“-”,这是value会变成2,而不是1。即每次改变都是value±stepValue,然后将最终的值限制在[minimumValue,maximumValue]区间内。

另外还有几个控制属性:

  • continuous 控制是否持续触发UIControlEventValueChanged事件。默认YES,即当按住时每次值改变都触发一次UIControlEventValueChanged事件,否则只有在释放按钮时触发UIControlEventValueChanged事件。
  • autorepeat 控制是否在按住是自动持续递增或递减。默认YES。
  • wraps 控制值是否在[minimumValue,maximumValue]区间内循环。默认NO,达到最大或者最小时,按钮disable.

这几个控制属性只有在特殊情况下使用,一般使用默认值即可

posted @ 2015-08-04 11:32  小毛驴  阅读(3220)  评论(0编辑  收藏  举报