@在IOS5中增加了一个UIStepper的新控件,UIStepper可以连续增加或减少一个数值。控件的外观是两个水平并排的按钮构成,一个显示为“+”,一个显示为“-”。
该控件的一个有趣的特征是当用户按住“+”,“-”按钮时,根据按住的时间长度,空间值的数字也以不同的数字改变。按住的时间越长,数值改变的越快。可以为UIStepper设定一个数值范围,比如0-99\. 它的显示效果如下:
1\. 初始化控件
UIStepper *_stepper = [[[UIStepper alloc] initWithFrame:CGRectMake(120, 20, 0, 0)] autorelease];
// 响应事件
[_stepper addTarget:self action:@selector(updateValue:) forControlEvents:UIControlEventValueChanged];
//设置最大值和最小值
[_stepper setMinimumValue:0];
[_stepper setMaximumValue:100];
// 控制值是否在[minimumValue, maximumValue]区间内循环,默认NO。
[_stepper setWraps:YES];
// 控制是否持续触发UIControlEventValueChanged事件。默认为YES,即当按住时每次值改变都触发一 次UIControlEventValueChanged事件,否则只有在释放时触发UIControlEventValueChanged事件。
_stepper.continuous = YES;
// 每次递增或递减的值
[_stepper setStepValue:10];
// 控制是否在按住时自动持续递增或递减,默认YES;
_stepper.autorepeat = YES;
2\. 属性说明
value: 当前所表示的值,默认为0.0;
minimumValue: 最小可以表示的值,默认0.0;
maximumValue: 最大可以表示的值,默认100.0;
stepValue: 每次递增或递减的值,默认为1.0;
3.如何判断加("+")减("-")
(1)通过设置一个 *double** previousValue; **// *用来记录*Stepper.value*的上一次值
(2)在对想操作的对象进行操作后,将Stepper.value = 0
~~~
#pragma mark - 设置UIStepper
- (void)createUIStepper{
UIStepper * stepperButton = [[UIStepper alloc]initWithFrame:CGRectMake(225, 500, 30, 10)];
[stepperButton addTarget:self action:@selector(controlStepperValue:) forControlEvents:UIControlEventValueChanged];
stepperButton.maximumValue = 100.0;
stepperButton.minimumValue = 0.0;
stepperButton.value = INITUISTEPPERVALUE;
stepperButton.stepValue = 1.0;
stepperButton.continuous = YES;
stepperButton.wraps = NO;
stepperButton.autorepeat = YES;
[self.view addSubview:stepperButton];
[stepperButton release];
}
- (void)controlStepperValue:(UIStepper *)stepper{
if (_segment.selectedSegmentIndex == 0) {
if (stepper.value > previousValue) {
CGRect redRect = _redView.frame;
redRect.size.height += 5;
_redView.frame = redRect;
} else {
CGRect redRect = _redView.frame;
redRect.size.height -= 5;
_redView.frame = redRect;
}
previousValue = stepper.value;
}else{
if (stepper.value > previousValue) {
CGRect redRect = _greenView.frame;
redRect.size.height += 5;
_greenView.frame = redRect;
} else {
CGRect redRect = _greenView.frame;
redRect.size.height -= 5;
_greenView.frame = redRect;
}
previousValue = stepper.value;
}
}
~~~
- 前言
- UITableView详解(UITableViewCell(一)重中之重)
- UITableView详解(UITableViewCell(二) 自定义cell)
- UITableView详解(UITableViewCell(三) cell根据文本长度来自动调整cell高度)
- UITableView详解(UITableViewCell(四) 增加 删除 移动)
- UITabBarController详解(一)UITabBarController的介绍和设置(偷了点懒,直接用了ARC)
- UITabBarController详解(二)UITabBarController的代理方法以及模态显示
- UISearchBar详解(一)基本属性
- UISearchBar详解(二)数据刷选类:NSPredicate
- UISearchDisplayController 的使用
- UINavigationController详解(一)
- UINavigationController详解(二)UINavigationBar(UIBarButtonItem)
- UINavigationController详解(三)UIToolBar
- UINavigationController详解(四)iOS7新特性
- UIScrollView控件详解
- UISwitch用法-以及-自定义UISwitch控件
- UIAlertView用法
- UILabel 的常见属性和方法:
- UIPickerView(滚动选择控制器)
- UIActivityIndicatorView(活动指示器 ---------> 网络卡后加载,画面,图像加载闪烁的圆圈)
- UIStepper
- UIImagePickerController--------图片选取器
- UITextView
- UITabBarController详解(三)自定义UITabBarController
- UIWebView基本介绍