QuartzCore框架学习-CAGradientLayer
2016-01-19 14:25
357 查看
转自:/article/2048569.html
CAGradientLayer可以方便的处理颜色渐变。
Properties:
@property(copy) NSArray *colors
渐变颜色的数组
[cpp] view
plaincopy
[NSArray arrayWithObjects:(id)[[[UIColor blackColor] colorWithAlphaComponent:1] CGColor],
(id)[[[UIColor yellowColor] colorWithAlphaComponent:1] CGColor],
(id)[[[UIColor blueColor] colorWithAlphaComponent:1] CGColor],
(id)[[UIColor clearColor] CGColor],
nil];
如上定义了四种颜色(最后一种是无色)。
@property(copy) NSArray *locations
渐变颜色的区间分布,locations的数组长度和color一致,这个值一般不用管它,默认是nil,会平均分布。
[cpp] view
plaincopy
[NSArray arrayWithObjects:[NSNumber numberWithFloat:0.0],
[NSNumber numberWithFloat:0.3],
[NSNumber numberWithFloat:0.8],
[NSNumber numberWithFloat:1.0],
nil];
注意这几个数字在0到1之间单调递增。
@property CGPoint startPoint
映射locations中第一个位置,用单位向量表示,比如(0,0)表示从左上角开始变化。默认值是(0.5,0.0)。
@property CGPoint endPoint
映射locations中最后一个位置,用单位向量表示,比如(1,1)表示到右下角变化结束。默认值是(0.5,1.0)。
@property(copy) NSString *type
默认值是kCAGradientLayerAxial,表示按像素均匀变化。除了默认值也无其它选项。
下面是我用上面的代码实现的最终效果,startPoint是(0,0),endPoint是(1,1)。
CAGradientLayer可以方便的处理颜色渐变。
Properties:
@property(copy) NSArray *colors
渐变颜色的数组
[cpp] view
plaincopy
[NSArray arrayWithObjects:(id)[[[UIColor blackColor] colorWithAlphaComponent:1] CGColor],
(id)[[[UIColor yellowColor] colorWithAlphaComponent:1] CGColor],
(id)[[[UIColor blueColor] colorWithAlphaComponent:1] CGColor],
(id)[[UIColor clearColor] CGColor],
nil];
如上定义了四种颜色(最后一种是无色)。
@property(copy) NSArray *locations
渐变颜色的区间分布,locations的数组长度和color一致,这个值一般不用管它,默认是nil,会平均分布。
[cpp] view
plaincopy
[NSArray arrayWithObjects:[NSNumber numberWithFloat:0.0],
[NSNumber numberWithFloat:0.3],
[NSNumber numberWithFloat:0.8],
[NSNumber numberWithFloat:1.0],
nil];
注意这几个数字在0到1之间单调递增。
@property CGPoint startPoint
映射locations中第一个位置,用单位向量表示,比如(0,0)表示从左上角开始变化。默认值是(0.5,0.0)。
@property CGPoint endPoint
映射locations中最后一个位置,用单位向量表示,比如(1,1)表示到右下角变化结束。默认值是(0.5,1.0)。
@property(copy) NSString *type
默认值是kCAGradientLayerAxial,表示按像素均匀变化。除了默认值也无其它选项。
下面是我用上面的代码实现的最终效果,startPoint是(0,0),endPoint是(1,1)。
gradientLayer.mask = _label.layer;可以做文字遮罩效果
相关文章推荐
- PICTURE控件显示图片或视频的方法
- 多github帐号的SSH key切换
- .NET framework 4.0安装失败
- 求子数组的最大和
- css重绘与重排
- 在Eclipse中创建maven项目,并转为Web Dynamic web project
- spring security 3 自定义认证,授权示例
- javaScript 隐藏与显示的代码
- pipework的使用以及源码分析
- CPU使用率
- 关于URI和URL
- Address already in use: JVM_Bind <null>:8080
- 哈理工OJ 1161 Leyni(线段树)
- excel 数组公式
- 河内之塔
- struts2--国际化
- PHP 如何安全的使用 MySQL ?
- 【Android适配问题集锦-文件类】获取Android机型设备信息的适配差异问题
- iOS学习——AutoLayout中利用 NSLayoutConstraint设置相对布局
- nginx 静态文件 ajax post 404