UIStepper步进器 & UISegmentControl分栏控件

UIStepper

  • alloc init 创建步进器对象
  • frame 设置位置,宽 高 不能变
  • minimumValue 设置最小值
  • maximumValue 设置最大值
  • value 设置当前值
  • stepValue 设置步进值
  • autorepeat 是否可以重复响应事件(即是否支持长按响应)
  • continuous 长按按钮时,是否每次将步进结果通过事件函数响应出来
  • addTarget 添加响应事件

具体使用:

//ViewController.h
@property(strong,nonatomic)UIStepper* stepper;

//ViewController.m
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    //创建步进器对象
    _stepper = [[UIStepper alloc]init];
    //设置步进器位置
    _stepper.frame = CGRectMake(100, 100, 80, 40);
    _stepper.minimumValue = 0;
    _stepper.maximumValue = 100;
    _stepper.value = 10;
    //设置步进值,每次变化多少
    _stepper.stepValue = 10;
    //是否可以重复响应事件操作
    _stepper.autorepeat = YES;
    //长按按钮时,是否每次将步进结果通过事件函数响应出来
    _stepper.continuous = YES;
    [_stepper addTarget:self action:@selector(pressStepper) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:_stepper];
}

-(void)pressStepper{
    NSLog(@"step press! value = %f",_stepper.value);
}

UISegmentControl分栏控件

  • alloc init 创建分栏控件
  • frame 设置位置
  • (void)insertSegmentWithTitle:(nullable NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated; 插入栏目内容
  • selectedSegmentIndex 设置当前选中的栏目序号
  • tintColor 设置控件风格颜色
  • addTarget 添加响应事件
  • (nullable NSString *) titleForSegmentAtIndex:(NSUInteger)segment; 根据序号获取栏目的标题
//ViewController.h
@property(strong,nonatomic)UISegmentControl* segControl;

//ViewController.m
- (void)viewDidLoad {
    [super viewDidLoad];

    _segControl = [[UISegmentedControl alloc]init];
    //设置分栏控件位置,宽度可变,高度不可变
    _segControl.frame = CGRectMake(10, 200, 300, 40);
    [_segControl insertSegmentWithTitle:@"0元" atIndex:0 animated:NO];
    [_segControl insertSegmentWithTitle:@"5元" atIndex:1 animated:NO];
    [_segControl insertSegmentWithTitle:@"10元" atIndex:2 animated:NO];
    
    _segControl.selectedSegmentIndex = 0;
    _segControl.tintColor = [UIColor purpleColor];
    
    [_segControl addTarget:self  action:@selector(pressSegmentControl) forControlEvents:UIControlEventValueChanged];
    
    [self.view addSubview:_segControl];
}

-(void)pressSegmentControl{
    NSLog(@"%ld",_segControl.selectedSegmentIndex);
    NSLog(@"当前选中:%@",[_segControl titleForSegmentAtIndex:(_segControl.selectedSegmentIndex)]);
}

最终效果如图:

UIStepper步进器 & UISegmentControl分栏控件_第1张图片
屏幕快照 2017-10-11 17.09.52.png

想要酷炫一些的步进器还是要自定义控件的......
大家有好的意见或建议欢迎讨论~

你可能感兴趣的:(UIStepper步进器 & UISegmentControl分栏控件)