@在IOS5中增加了一个UIStepper的新控件,UIStepper可以连续增加或减少一个数值。控件的外观是两个水平并排的按钮构成,一个显示为“+”,一个显示为“-”。

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

  1. #pragma mark - 设置UIStepper
  2. - (  void )createUIStepper{
  3. UIStepper  * stepperButton = [[UIStepper  alloc ]initWithFrame:CGRectMake(2 2 5 ,  5 0 0 ,  3 0 ,  1 0 )];
  4. [stepperButton   addTarget : self  action : @selector (controlStepperValue:)  forControlEvents :UIControlEventValueChanged];
  5. stepperButton  .maximumValue  =  1 0 0 .0 ;
  6. stepperButton  .minimumValue  =  0 .0 ;
  7. stepperButton  .value  = INITUISTEPPERVALUE;
  8. stepperButton  .stepValue  =  1 .0 ;
  9. stepperButton  .continuous  =  YES ;
  10. stepperButton  .wraps  =  NO ;
  11. stepperButton  .autorepeat  =  YES ;
  12. [  self .view  addSubview :stepperButton];
  13. [stepperButton   release ];
  14. }
  15. - (  void )controlStepperValue:( UIStepper  *)stepper{
  16. if  (_segment .selectedSegmentIndex  ==  0 ) {
  17. if  (stepper .value  > previousValue) {
  18. CGRect redRect = _redView  .frame ;
  19. redRect  .size .height  +=  5 ;
  20. _redView  .frame  = redRect;
  21. }   else  {
  22. CGRect redRect = _redView  .frame ;
  23. redRect  .size .height  -=  5 ;
  24. _redView  .frame  = redRect;
  25. }
  26. previousValue = stepper  .value ;
  27. }  else {
  28. if  (stepper .value  > previousValue) {
  29. CGRect redRect = _greenView  .frame ;
  30. redRect  .size .height  +=  5 ;
  31. _greenView  .frame  = redRect;
  32. }   else  {
  33. CGRect redRect = _greenView  .frame ;
  34. redRect  .size .height  -=  5 ;
  35. _greenView  .frame  = redRect;
  36. }
  37. previousValue = stepper  .value ;
  38. }
  39. }

//如下面例子

- (void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view.

self.view.backgroundColor=[UIColor yellowColor];

UIStepper *stepper = [[UIStepper alloc] init];

stepper.tag = 10;

stepper.center = CGPointMake(160, 240);

stepper.minimumValue = 1; //设置最小值

stepper.maximumValue = 30; //设置最大值

stepper.stepValue = 2; //每次递增2

stepper.value = 15; //初始值

[stepper setWraps:YES]; //是否循环

[stepper addTarget:self action:@selector(doTest) forControlEvents:UIControlEventValueChanged];

[self.view addSubview:stepper];

[stepper release];

}

-(void)doTest

{

UIStepper *per = (UIStepper*)[self.view viewWithTag:10];

if (per.continuous)

{

NSLog(@"Y");

int a = per.value;  //获取当前值

NSLog(@"%d", a);

}

else

{

NSLog(@"N");

}

}

UIStepper的更多相关文章

  1. UI第九节——UIStepper

    - (void)viewDidLoad {    [super viewDidLoad];        // 实例化UIStepper,大小是固定的    UIStepper *stepper = ...

  2. UISegmentedControl和UIStepper的使用

    UISegmentedControl:分栏控件,常用的属性和方法是 1.tintColor:控制分栏控件的颜色风格 2.insertSegmentWithTitle(Image):插入分栏标题(图片) ...

  3. UI中一些不常用的控件UIActivityIndicatorView、UIProgressView、UISegmentedControl、UIStepper、UISwitch、UITextView、UIAlertController

    //UIActivityIndicatorView //小菊花,加载 #import "ActivityIndicatorVC.h" @interface ActivityIndi ...

  4. UIImageView、UISlider、UISwitch、UIStepper、UISegmentControl

    UIImageView——图像视图 作用:专门用来显示图片的控件 . 设置图像 [self.imageView setImage:[UIImage imageNamed:@"abc.png& ...

  5. UIStepper步进器 ——事件驱动型控件,(一个+和-按钮的)

    - (void)viewDidLoad {    [super viewDidLoad];        //步进器 固定的size (94*27), 事件驱动型控件    UIStepper *st ...

  6. iOS - UIStepper

    前言 NS_CLASS_AVAILABLE_IOS(5_0) __TVOS_PROHIBITED @interface UIStepper : UIControl @available(iOS 5.0 ...

  7. swift系统学习控件篇:UIProgressView+NSTimer+UIstepper+UIAlertController

    工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIProgressView+NSTimer+UIstepper UIStepper UIP ...

  8. UIStepper swift

    // // ViewController.swift // UILabelTest // // Created by mac on 15/6/23. // Copyright (c) 2015年 fa ...

  9. iOS开发——UI篇Swift篇&UISwitch/UIStepper

    UISwitch/UIStepper override func viewDidLoad() { super.viewDidLoad() titleLabel.text = titleString / ...

随机推荐

  1. Ubuntu安装后的一些配置

    对新安装的Ubuntu的一些配置: #移除无用包 apt-get remove libreoffice-common apt-get remove unity-webapps-common apt-g ...

  2. N年后给自己一些忠诚的建议

    给自己S年后的一封信: 也许,现在的自己已经经历了种种历练,或成为干将,许是拔杆而起的创业者,再者仍然是一名奋斗中的工薪族.无论现在如何,请记得: M年前,自己坐在小房子里写下的信件. 那时候,自己是 ...

  3. Date、String和Timestamp类型转换

    1.String与Date类型转换: 1.获取当前系统时间: Date date1 = new Date();   //获取系统当前时间 Calendar cal = Calendar.getInst ...

  4. [51NOD1007] 正整数分组(DP,记忆化搜索)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1007 dp(id, s)表示第id个数之前,其中一个集合和为s ...

  5. [SAP ABAP开发技术总结]选择屏幕——按钮、单选复选框

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  6. CUBRID学习笔记 4 端口和win7下连接数据库cubrid教程

    都是官方的文档 ,水平有限, 大家可以看原文. http://www.cubrid.org/wiki_tutorials/entry/connecting-to-a-remote-cubrid-dat ...

  7. CSS笔记(三)背景

    CSS 允许应用纯色作为背景,也允许使用背景图像创建相当复杂的效果. 参考:http://www.w3school.com.cn/css/css_background.asp 背景色 p {backg ...

  8. const 与 readonly 知多少

    const与readonly 很像,都是将变量声明为只读,且在变量初始化后就不可改写.那么,const与readonly 这两个修饰符到底区别在什么地方呢?其实,这个牵扯出C#语言中两种不同的常量类型 ...

  9. SVN 的使用

    文件夹上的符号有什么意义?? 黄色感叹号(有冲突):--这是有冲突了,冲突就是说你对某个文件进行了修改,别人也对这个文件进行了修改,别人抢在你提交之前先提交了,这时你再提交就会被提示发生冲突,而不允许 ...

  10. [poj2286]The Rotation Game (IDA*)

    //第一次在新博客里发文章好紧张怎么办 //MD巨神早已在一个小时前做完了 The Rotation Game Time Limit: 15000MS Memory Limit: 150000K To ...