美文网首页
UIprogressView

UIprogressView

作者: lilinjianshu | 来源:发表于2016-03-16 20:28 被阅读6753次

    UIProgressView 进度指示器

    UIProgressView 与UIActivityIndicatorView 相似,只不过它提供了一个接口让你可以显示一个类似进度条的东西,这样就能让用户知道当前操作完成了多少(告知用户离操作结束还多远)。

    一.创建

    UIProgressView* progressView = [ [ UIProgressView alloc ]

    initWithFrame:CGRectMake(150.0,20.0,130.0,30.0)];

    二.设置风格:

    progressView .UIProgressViewStyle= UIProgressViewStyleDefault;

    系统给你提供了2种风格:

    UIProgressViewStyleDefault 标准进度条

    UIProgressViewStyleDefault 深灰色进度条,用于工具栏中

    三.显示

    [ self.toolBar addSubview:progressView ];

    四.进度

    当它显示出来时你的程序可以更新它的进度,属性progress是一个0.0到1.0之间的浮点数:

    progressView.progress= 0. 5;

    五.示例代码

    4.09UIProgressView(1)

    - (void)progressChanged:(NSTimer*)timer

    {

    if(_progressView.progress>=1.0) {

    [timerinvalidate];

    }

    //如果对象的progress大于1.0,则定时器失效

    _progressView.progress+=0.02;

    //让对象的progress值每次都加0.02,以此达到让进度动起来的效果。

    }

    - (void)viewDidLoad

    {

    [superviewDidLoad];

    self.progressView= [[UIProgressViewalloc]init];

    //创建一个UIProgressView对象:_progressView

    _progressView.frame=CGRectMake(0,20,320,0);

    //设置它的位置及大小,它的高是默认的为9,可以写成0。

    _progressView.progressViewStyle=UIProgressViewStyleDefault;

    //设置它的风格,为默认的

    _progressView.trackTintColor= [UIColorblueColor];

    //设置轨道的颜色

    _progressView.progressTintColor= [UIColorwhiteColor];

    //设置进度的颜色

    _progressView.progress=0.0;

    //设置进度的初始值,即初始位置。范围是0.0-1.0

    [self.viewaddSubview:_progressView];

    //把_progressView加入到view上

    [_progressViewrelease];

    //要记得release

    [NSTimerscheduledTimerWithTimeInterval:0.5

    target:self

    selector:@selector(progressChanged:)

    userInfo:nil

    repeats:YES];

    //设置定时器

    }

    第二种介绍

    UIProgressView:

    作用:

    动态显示当前工作状态进度。

    progressView

    Progress bar view

    1.h file

    //  Created by denny chen on 12-7-8.

    //  Copyright (c) 2012年__MyCompanyName__. All rights reserved.

    //

    #import

    @interfaceProgressViewViewController :UIViewController

    {

    UIProgressView*progressview;

    UIProgressView*barprogressview;

    NSTimer*timer;

    IBOutletUIButton*startButton;

    IBOutletUIButton*stopButton;

    }

    @property(nonatomic,retain)IBOutletUIProgressView*progressview;

    @property(nonatomic,retain)IBOutletUIProgressView*barprogressview;

    -(IBAction) startProgress:(id)sender;

    -(IBAction) stopProgress:(id)sender;

    @end

    2 .m file

    @implementationProgressViewViewController

    @synthesizeprogressview;

    @synthesizebarprogressview;

    - (void)viewDidLoad

    {

    self.progressview=nil;

    self.barprogressview=nil;

    [superviewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    stopButton.enabled=NO;

    startButton.enabled=YES;

    }

    -(void) dealloc

    {

    self.progressview=nil;

    self.barprogressview=nil;

    [superdealloc];

    }

    - (void)viewDidUnload

    {

    self.progressview=nil;

    self.barprogressview=nil;

    [superviewDidUnload];

    // Release any retained subviews of the main view.

    }

    /*进度条每次加0.01 */

    -(void) timerChanged:(id)sender

    {

    self.progressview.progress+=0.01f;

    self.barprogressview.progress+=0.01f;

    }

    -(IBAction) startProgress:(id)sender

    {

    timer=[NSTimerscheduledTimerWithTimeInterval:0.03f

    target:self

    selector:@selector(timerChanged:)

    userInfo:nil

    repeats:YES];

    //[timerretain];

    startButton.enabled=NO;

    stopButton.enabled=YES;

    }

    -(IBAction) stopProgress:(id)sender

    {

    [timerinvalidate];

    //[timerrelease];

    //timer=nil;

    self.progressview.progress=0.0f;

    self.barprogressview.progress=0.0f;

    startButton.enabled=YES;

    stopButton.enabled=NO;

    }

    相关文章

      网友评论

          本文标题:UIprogressView

          本文链接:https://www.haomeiwen.com/subject/hcaqlttx.html