UIStepper
@在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
- #pragma mark - 设置UIStepper
- - ( void )createUIStepper{
- UIStepper * stepperButton = [[UIStepper alloc ]initWithFrame:CGRectMake(2 2 5 , 5 0 0 , 3 0 , 1 0 )];
- [stepperButton addTarget : self action : @selector (controlStepperValue:) forControlEvents :UIControlEventValueChanged];
- stepperButton .maximumValue = 1 0 0 .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 ;
- }
- }
//如下面例子
- (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的更多相关文章
- UI第九节——UIStepper
- (void)viewDidLoad { [super viewDidLoad]; // 实例化UIStepper,大小是固定的 UIStepper *stepper = ...
- UISegmentedControl和UIStepper的使用
UISegmentedControl:分栏控件,常用的属性和方法是 1.tintColor:控制分栏控件的颜色风格 2.insertSegmentWithTitle(Image):插入分栏标题(图片) ...
- UI中一些不常用的控件UIActivityIndicatorView、UIProgressView、UISegmentedControl、UIStepper、UISwitch、UITextView、UIAlertController
//UIActivityIndicatorView //小菊花,加载 #import "ActivityIndicatorVC.h" @interface ActivityIndi ...
- UIImageView、UISlider、UISwitch、UIStepper、UISegmentControl
UIImageView——图像视图 作用:专门用来显示图片的控件 . 设置图像 [self.imageView setImage:[UIImage imageNamed:@"abc.png& ...
- UIStepper步进器 ——事件驱动型控件,(一个+和-按钮的)
- (void)viewDidLoad { [super viewDidLoad]; //步进器 固定的size (94*27), 事件驱动型控件 UIStepper *st ...
- iOS - UIStepper
前言 NS_CLASS_AVAILABLE_IOS(5_0) __TVOS_PROHIBITED @interface UIStepper : UIControl @available(iOS 5.0 ...
- swift系统学习控件篇:UIProgressView+NSTimer+UIstepper+UIAlertController
工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIProgressView+NSTimer+UIstepper UIStepper UIP ...
- UIStepper swift
// // ViewController.swift // UILabelTest // // Created by mac on 15/6/23. // Copyright (c) 2015年 fa ...
- iOS开发——UI篇Swift篇&UISwitch/UIStepper
UISwitch/UIStepper override func viewDidLoad() { super.viewDidLoad() titleLabel.text = titleString / ...
随机推荐
- program
[题目分析] 题目的意思是在一个数列中找到四个数,a[i]=a[j]<a[k]=a[l],其他都扯淡. 先把这些数sort一下,所有相等的数字就都排在一起了,然后这个数列可以按照数字的种类划分成 ...
- 土豪聪要请客(stol)
土豪聪要请客(stol) 众所周知,聪哥(ndsf)是个土豪,不过你们不知道的是他的MZ和他的RMB一样滴多…… 某天土豪聪又赚了10^10000e的RMB,他比较开心,于是准备请客.他在自己在XX星 ...
- apache commons Java包简介
更多信息,请参考:http://commons.apache.org/ 一.Commons BeanUtils说明:针对Bean的一个工具集.由于Bean往往是有一堆get和set组成,所以BeanU ...
- map的使用(自增)ret = map(lambda x : x+100 if x % 2 == 1 else x - 100, [1,2,3,4,5])
#!/usr/bin/env python ret = map(lambda x : x+100 if x % 2 == 1 else x - 100, [1,2,3,4,5]) print(ret) ...
- sql server 向oracle导入表
选择相应的数据库,右键,任务,选择导出数据 点击下一步 选择Microsoft OLE DB Provider for Sql Server 选择下一步 目标选择.net Framework data ...
- Android Volley 框架的使用(一)
为什么要使用Volley框架 开发android应用很多时候都要涉及网络操作,Android SDK中提供了HttpClient 和 HttpUrlConnection两种方式用来处理网络操作,但当应 ...
- 巧遇"drwxr-xr-x."权限
drwxr-xr-x. 是SELinux的问题 REDHAT6之后安全提高所以设置的 关闭SELINUX就好了 因为新版本ls把多acl和selinux属性加进去了,与系统无关,新版本的ls代码使用1 ...
- 高效的使用STL
高效的使用STL 仅仅是个选择的问题,都是STL,可能写出来的效率相差几倍: 熟悉以下条款,高效的使用STL: 当对象很大时,建立指针的容器而不是对象的容器 1)STL基于拷贝的方式的来工作,任何需要 ...
- 让css初学者抓狂的属性float
挣扎了好久,始终没有决定要不要写博客,心里有几个顾虑一是我是小白,我写的文章有没有人看?二是我是小白,我写的文章假如存在诸多错误,理解的不对发表上去再去误导别人.三是写一篇文章费时费力.但是我现在想明 ...
- html中出现的script失效
如果在Controller中出现script代码类似 $hello_str='Hello God<script>alert(3);</script>'; 那么我不希望在传给vi ...