NSTimer控制进度条



#import "UIprogressViewController.h"

@interface UIprogressViewController (){
    UIProgressView *progress;
    UITableView *mytable;
    NSTimer *timer;
    UIButton *btn;
    double a;
}

@end

@implementation UIprogressViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    mytable=[[UITableView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
    mytable.backgroundColor =[UIColor whiteColor];
    mytable.separatorStyle =UITableViewCellSeparatorStyleNone;
    [self.view addSubview:mytable];
    
    //类型,UIProgressViewStyleDefault默认为白色
    progress =[[UIProgressView alloc]initWithProgressViewStyle:UIProgressViewStyleDefault];
    //位置(高度设置多少都不影响)
    progress.frame =CGRectMake(20, 100, 280, 0);
    //填充部分颜色
    progress.progressTintColor =[UIColor yellowColor];
    //填充部分图片(设置后则颜色无效)
    progress.progressImage =[UIImage imageNamed:@""];
    //轨道颜色
    progress.trackTintColor =[UIColor redColor];
    //轨道图片(设置后则颜色无效)
    progress.trackImage =[UIImage imageNamed:@"file_vedio_icon"];
    //设置当前进度值
//    [progress setProgress:0.5 animated:YES];
    //加到tableview上
    [mytable addSubview:progress];
    
    btn =[UIButton buttonWithType:UIButtonTypeContactAdd];
    btn.frame =CGRectMake(130, 300, 60, 60);
    [btn addTarget:self action:@selector(movemove:) forControlEvents:UIControlEventTouchUpInside];
    [mytable addSubview:btn];
}

-(void)movemove:(UIButton *)button
{
    a=0;
    [progress setProgress:0 animated:NO];
    timer =[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(runProgress:) userInfo:nil repeats:YES];
    [timer fire];
}

-(void)runProgress:(id)sender
{
    
    if (a>100) {
        [timer invalidate];
    }else{
        [progress setProgress:a/100 animated:YES];
        a++;
    }
    
    
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

@end
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值