iOS - UIStepper

前言

    NS_CLASS_AVAILABLE_IOS(5_0) __TVOS_PROHIBITED @interface UIStepper : UIControl
    @available(iOS 5.0, *)                         public class UIStepper : UIControl

1、UIStepper 的创建

  • Objective-C

        UIStepper *stepper = [[UIStepper alloc] init];
    
        [self.view addSubview:stepper];                                         
  • Swift

        let stepper:UIStepper = UIStepper()
    
        self.view.addSubview(stepper)

2、UIStepper 的设置

  • Objective-C

        // 设置 frame
        /*
            大小由系统确定
        */
        stepper.frame = CGRectMake(10, 30, 0, 0);
    
        // 设置位置
        stepper.center = self.view.center;
    
        // 设置最大和最小值
        stepper.minimumValue = 0;
        stepper.maximumValue = 100;
    
        // 设置当前值
        stepper.value = 30;
    
        // 获取当前值
        double value = stepper.value;
    
        // 设置一步的大小
        stepper.stepValue = 5;
    
        // 设置背景颜色
        stepper.backgroundColor = [UIColor grayColor];
    
        // 标题及边框颜色
        stepper.tintColor = [UIColor redColor];
    
        // 设置背景图片
        [stepper setBackgroundImage:[UIImage imageNamed:@"pic2"] forState:UIControlStateNormal];
        [stepper setBackgroundImage:[UIImage imageNamed:@"pic1"] forState:UIControlStateHighlighted];
    
        // 设置加减号图标
    
            // 设置加号图标
            [stepper setIncrementImage:[[UIImage imageNamed:@"volum+"] 
                                              imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] 
                            forState:UIControlStateNormal];
            // 设置减号图标
            [stepper setDecrementImage:[[UIImage imageNamed:@"volum-"] 
                                              imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] 
                            forState:UIControlStateNormal];
    
        // 设置中间分割线图标
        [stepper setDividerImage:[UIImage imageNamed:@"divid"] forLeftSegmentState:UIControlStateNormal 
                                                                 rightSegmentState:UIControlStateNormal];
    
        // 设置按住不放是否连续更改值
        stepper.continuous = YES;
    
        // 设置是否循环
        /*
            到最大值时再增加数值从最小值开始,到最小值时再减小数值从最大值开始
        */
        stepper.wraps = YES;
    
        // 添加点击触发事件
        [stepper addTarget:self action:@selector(stepperClick:) forControlEvents:UIControlEventValueChanged];
  • Swift

        // 设置 frame
        /*
            大小由系统确定
        */
        stepper.frame = CGRectMake(10, 30, 0, 0)
    
        // 设置位置
        stepper.center = self.view.center
    
        // 设置最大和最小值
        stepper.minimumValue = 0
        stepper.maximumValue = 100
    
        // 设置当前值
        stepper.value = 30
    
        // 获取当前值
        let value:Double = stepper.value
    
        // 设置一步的大小
        stepper.stepValue = 5
    
        // 设置背景颜色
        stepper.backgroundColor = UIColor.grayColor()
    
        // 标题及边框颜色
        stepper.tintColor = UIColor.redColor()
    
        // 设置背景图片
        stepper.setBackgroundImage(UIImage(named: "pic2"), forState: .Normal)
        stepper.setBackgroundImage(UIImage(named: "pic1"), forState: .Highlighted)
    
        // 设置加减号图标
    
            // 设置加号图标
            stepper.setIncrementImage(UIImage(named: "volum+")?.imageWithRenderingMode(.AlwaysOriginal), 
                             forState: .Normal)         
            // 设置减号图标
            stepper.setDecrementImage(UIImage(named: "volum-")?.imageWithRenderingMode(.AlwaysOriginal), 
                             forState: .Normal)
    
        // 设置中间分割线图标
        stepper.setDividerImage(UIImage(named: "divid"), forLeftSegmentState: .Normal, 
                                                           rightSegmentState: .Normal)
    
        // 设置按住不放是否连续更改值
        stepper.continuous = true
    
        // 设置是否循环
        /*
            到最大值时再增加数值从最小值开始,到最小值时再减小数值从最大值开始
        */
        stepper.wraps = true
    
        // 添加点击触发事件
        stepper.addTarget(self, action: #selector(UiStepper.stepperClick(_:)), forControlEvents: .ValueChanged)

3、Storyboard 中设置

  • 在 Storyboard 场景中设置

    • Stepper 设置

      Stepper1

      Value最小值/最大值/当前值/步进值
      Behavior
      -- Autorepeat
      -- Continuous连续更改值
      -- Wrap循环改变值
    • Control 设置

      Stepper2

      Alignment文字对齐方式
      Content
      -- Selected选中
      -- Enable可用
      -- Highlighted高亮
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值