基礎控件-->>UIProgressView 詳解


繼基礎控件UISwitch之后,期待的UIProgressView詳細介紹-->>保證你有意外收獲,如有問題歡迎指點。。都是一些很簡單的基礎,大神勿噴。。


1、UIProgressView相關屬性


#######效果圖


1.gif

#######代碼

#import "ViewController.h"

@interface ViewController ()
{
    CGFloat progress;
}
@property (nonatomic,strong) UIProgressView *pro ;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    [self setUpSubView];
    
}

- (void)setUpSubView
{
    //實例化一個進度條,有兩種樣式,一種是UIProgressViewStyleBar一種是UIProgressViewStyleDefault,然并卵-->>幾乎無區別
    UIProgressView *pro=[[UIProgressView alloc]initWithProgressViewStyle:UIProgressViewStyleDefault];
    //設置的高度對進度條的高度沒影響,整個高度=進度條的高度,進度條也是個圓角矩形
    pro.frame=CGRectMake(30, 100, [UIScreen mainScreen].bounds.size.width - 60, 50);
    //設置進度條顏色
    pro.trackTintColor=[UIColor blackColor];
    //設置進度默認值,這個相當于百分比,范圍在0~1之間,不可以設置最大最小值
    //pro.progress=0.7;
    //設置進度條上進度的顏色
    pro.progressTintColor=[UIColor redColor];
    //設置進度條的背景圖片
   // pro.trackImage=[UIImage imageNamed:@"1"];
    //設置進度條上進度的背景圖片 IOS7后好像沒有效果了)
  //  pro.progressImage=[UIImage imageNamed:@"1.png"];
    //設置進度值并動畫顯示
  //  [pro setProgress:0.7 animated:YES];
    
    //由于pro的高度不變 使用放大的原理讓其改變
    pro.transform = CGAffineTransformMakeScale(1.0f, 10.0f);
    //自己設置的一個值 和進度條作比較 其實為了實現動畫進度
    progress= 0.7;
    [self.view addSubview:pro];
    self.pro =pro;

    [NSTimer scheduledTimerWithTimeInterval:0.1
                                     target:self
                                   selector:@selector(progressChanged:)
                                   userInfo:nil
                                    repeats:YES];
}
-(void)progressChanged:(NSTimer *)timer
{
    _pro.progress += 0.005;
    if (_pro.progress >= progress) {
        [timer invalidate];
    }
}

@end

很多事情只有自己親身去做,去體驗了才會知道那種感覺。聽別人說的很難,很難得樣子。自己去實際行動才能發現其中的奧秘,或許對你來說真的不難。
2016年09月26日 未完待續。。。需要源碼留言。。下一講:自定義ProgressView條形進度條

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容