首页 > 代码库 > iOS 实现进度条(progress)
iOS 实现进度条(progress)
#import <UIKit/UIKit.h>@interface ZSDProgressView : UIView{ UIView *progressView;//进度view}//进度值@property(nonatomic,assign)float progress;@end#define UIColorFromRGB(rgbValue) [UIColor \colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) >> 8))/255.0 blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0]#import "ZSDProgressView.h"@implementation ZSDProgressView-(id)initWithFrame:(CGRect)frame{ if (self=[super initWithFrame:frame]) { self.backgroundColor=UIColorFromRGB(0xDADADA); } return self;}-(void)awakeFromNib{ self.backgroundColor=UIColorFromRGB(0xDADADA); progressView=[[UIView alloc]init]; progressView.translatesAutoresizingMaskIntoConstraints=NO; [self addSubview:progressView]; }-(void)setProgress:(float)progress{ _progress=progress; /** * activePartView添加约束 */ //左边约束 [self addConstraint:[NSLayoutConstraint constraintWithItem:progressView attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeLeft multiplier:1 constant:0]]; //上边约束 [self addConstraint:[NSLayoutConstraint constraintWithItem:progressView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeTop multiplier:1 constant:0]]; //高度约束 [self addConstraint:[NSLayoutConstraint constraintWithItem:progressView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeHeight multiplier:1 constant:self.frame.size.height]]; //宽度约束 NSLayoutConstraint *widthCon = [NSLayoutConstraint constraintWithItem:progressView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeWidth multiplier:_progress constant:0]; [self addConstraint:widthCon]; //用背景图来填充背景颜色 UIImage *bgImage=[UIImage imageNamed:@"invest_jindu"]; UIColor *bgColor=[UIColor colorWithPatternImage:bgImage]; [progressView setBackgroundColor:bgColor]; //更新约束 [progressView needsUpdateConstraints]; }@end
#import "ViewController.h"#import "ZSDProgressView.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet ZSDProgressView *progressView;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib.}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}- (IBAction)setBtnClick:(UIButton *)sender{ _progressView.progress=0.6; }@end
iOS 实现进度条(progress)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。