计步器和进度条

//创建计步器
-(void)createStepper
{
    //<1>创建对象
    UIStepper * stepper = [[UIStepper alloc]initWithFrame:CGRectMake(100, 100, 100, 30)];
    
    //<2>为stepper添加背景颜色
    //stepper.backgroundColor = [UIColor redColor];
    //默认背景颜色是无色的
    
    //<3>设置stepper的边框颜色
    stepper.tintColor = [UIColor redColor];
    //边框默认的背景颜色为蓝色
    
    //<4>设置计步器的最小值
    stepper.minimumValue = 0;
    
    //<5>设置计步器的最大值
    stepper.maximumValue = 100;
    
    //<6>设置当前计步器的值
    stepper.value = 0;
    
    //<7>设置计步器的步长(点击+ -的时候value值的变化)
    stepper.stepValue = 10;
    
    //<8>计步器的点击事件
    [stepper addTarget:self action:@selector(pressStepper:) forControlEvents:UIControlEventValueChanged];
    
    //<9>关闭长按功能
    //stepper.continuous = NO; 旧的属性
    stepper.autorepeat = NO;//新的属性(方法)
    
    stepper.tag = 99;
    [self.view addSubview:stepper];

}
//创建进度条
-(void)createProgress
{
    //创建对象
    
    //进度条样式
    /*
     UIProgressViewStyleDefault
     UIProgressViewStyleBar
     */
    UIProgressView * progressView = [[UIProgressView alloc]initWithProgressViewStyle:UIProgressViewStyleDefault];
    progressView.frame = CGRectMake(10, 300, 300, 10);
    
    //<1>设置进度条左侧的颜色
    [progressView setProgressTintColor:[UIColor blueColor]];
    
    //<2>设置进度条右侧的颜色
    [progressView setTrackTintColor:[UIColor yellowColor]];
    
    //<3>设置进度条当前的显示的位置
    progressView.progress = 0;
    //progress的值 取值范围是(0~1)这个是固定的不能修改
    //如果progress的值大于1 那么进度一直处于充满状态
    //<4>添加tag值
    progressView.tag = 1;
    
    [self.view addSubview:progressView];
    
}
-(void)pressStepper:(id)sender
{
    //id表示任意类型的对象指针
    //sender表示与用户交互的控件对象 这种机制布置button具有 所有控件都可以使用这种机制传递参数
    
    UIStepper * stepper = (UIStepper *)sender;
    UIProgressView * progress = (UIProgressView *)[self.view viewWithTag:1];
    
    //点击stepper修改progressView控件的progress值
    //stepper的最大值stepper.maximumValue
    progress.progress = stepper.value / stepper.maximumValue;
    
    NSLog(@"%f",stepper.value);
    
    if(progress.progress == 1)
    {
        [self presentViewController:next animated:YES completion:nil];
    }
}
- (void)viewDidLoad
{
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor cyanColor];
    
    //进度条与用户不能进行交互
    //使用计步器控制进度条的状态
    [self createStepper];
    [self createProgress];
    
    next = [[NextViewController alloc]init];
}
-(void)viewWillAppear:(BOOL)animated
{
    UIStepper * stepper = (UIStepper *)[self.view viewWithTag:99];
    UIProgressView * progressView = (UIProgressView *)[self.view viewWithTag:1];
    progressView.progress = 0;
    stepper.value = 0;
}

原文地址:https://www.cnblogs.com/sayimba/p/5707153.html