简单的渐变进度条(drawRect)
2016-12-07 00:00
120 查看
摘要: 昨天做了一个简单的渐变的进度条,是使用自定义的view加渐变的图片实现的。
只后我就寻思学习下drawRect的方法怎么实现。
使用CAGradientLayer 实现的渐变效果非常的简单,但是可操作的控件感觉非常的有限。因此这个渐变的进度条效果差强人意。
*继续学习吧,看看有没有更好的方法;
只后我就寻思学习下drawRect的方法怎么实现。
#import <UIKit/UIKit.h> @interface ProgressView : UIView /** 进度; */ @property (nonatomic, assign)CGFloat progress; @end
#import "ProgressView.h" @interface ProgressView () @end @implementation ProgressView - (void)setProgress:(CGFloat)progress { _progress = progress; [self setNeedsDisplay]; } - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { self.progress = 0.0; } return self; } - (void)drawRect:(CGRect)rect { //生成渐变色 CAGradientLayer *gLayer = [CAGradientLayer layer]; gLayer.frame = rect; gLayer.locations = @[@(self.progress*1.5-0.5), @(self.progress*1.5), @(1.5)]; gLayer.colors = @[(id)[UIColor orangeColor].CGColor, (id)[UIColor whiteColor].CGColor]; gLayer.startPoint = CGPointMake(0, 0.5); gLayer.endPoint = CGPointMake(1, 0.5); [self.layer addSublayer:gLayer]; } @end
使用CAGradientLayer 实现的渐变效果非常的简单,但是可操作的控件感觉非常的有限。因此这个渐变的进度条效果差强人意。
*继续学习吧,看看有没有更好的方法;
相关文章推荐
- 关于一个简单的渐变进度条
- AsynckTask的简单使用(更新进度条)
- android 最简单的方式实现旋转进度条
- Android 自定义View ProgressBarHorizontal:横向进度条、支持圆角、渐变、图片
- jquery实现模拟百分比进度条渐变效果代码
- 【Linux】简单实现进度条
- 安卓简单的加载进度对话框实现
- 简单进度条
- 利用NSURLSessionDownLoadDelegate做简单的下载进度条
- iOS开发——环形渐变进度条
- 简单的ajax遮罩层(加载进度圈)cvi_busy_lib.js
- Web---文件上传-用apache的工具处理、打散目录、简单文件上传进度
- Swift 圆形渐变进度条 支持事件 支持XIB和StoryBoard
- 简单好用的ajax进度条(xmlhttp),实现的是真正的进度
- JavaScript淡入淡出渐变简单实例
- Android自定义圆形渐变进度条(续)--加动画
- Libgdx 之简单进度条Demo
- 简单使用AFN实现下载和查看进度
- 简单的jquery图片轮播渐变
- Java动态显示文件上传进度的简单实现