iOS 渐变颜色 CGGradientCreateWithColorComponents 属性介绍

简介: iOS 渐变颜色 CGGradientCreateWithColorComponents 属性介绍

``` CGGradientRef gradient = CGGradientCreateWithColorComponents(colorSpace, colors, locations, 3);


colors:可以理解,就是颜色数组。


locations:The location for each color provided in components,也就是说颜色数组中的颜色的显示顺序。 ```


例:


``` CGFloat colors[] ={


1,0,0,1,//红


0,1,0,1,//绿


0,0,1,1};//蓝


CGFloat locations[3] = {0,0.5,1}; ```


我的理解:


把整个渐变区域当做一个 [0,1] 的区间,这里的 locations[] 就表示在这个 [0,1] 区间中颜色显示顺序,0表示开始的位置,1表示结束的位置。locations[] 数组中第一个数据表示第一个颜色的位置信息。


``` 即 红---->0------>开始


绿----->0.5---->中间位置


蓝----->1------>结束 ```


故,这里的渐变为:红-->绿-->蓝色


``` CGFloat locations[3] = {1,0.5,0}; 渐变为:蓝-->绿--->红


CGFloat locations[3] = {1,0.8,0.5};


蓝--->0.5---->中间位置


绿--->0.8---->中间偏下


红--->1------->最后 ``` 故,渐变为:蓝--->绿--->红,但是蓝色占据一半,因为一直显示蓝色,直到0.5的位置才开始渐变为绿色


相关文章
|
8月前
|
安全 前端开发 iOS开发
钉钉里微应用ios 底部安全区域的颜色怎么修改?
钉钉里微应用ios 底部安全区域的颜色怎么修改?
231 5
|
iOS开发
iOS CAEmitterLayer 属性介绍
iOS CAEmitterLayer 属性介绍
55 0
|
4月前
|
iOS开发 UED 开发者
iOS 手势中cancelsTouchesInView delaysTouchesBegan delaysTouchesEnded 三种属性的使用
iOS 手势中cancelsTouchesInView delaysTouchesBegan delaysTouchesEnded 三种属性的使用
170 9
|
5月前
|
Swift iOS开发
iOS开发-属性的内存管理
【8月更文挑战第12天】在iOS开发中,属性的内存管理至关重要,直接影响应用性能与稳定性。主要策略包括:`strong`(强引用),不维持对象生命期,可用于解除循环引用;`assign`(赋值),适用于基本数据类型及非指针对象属性;`copy`,复制对象而非引用,确保对象不变性。iOS采用引用计数管理内存,ARC(自动引用计数)自动处理引用增减,简化开发。为避免循环引用,可利用弱引用或Swift中的`[weak self]`。最佳实践包括:选择恰当的内存管理策略、减少不必要的强引用、及时释放不再使用的对象、注意block内存管理,并使用Xcode工具进行内存分析。
|
7月前
|
前端开发 iOS开发
input框设置placeholder属性在iOS中显示不完整
input框设置placeholder属性在iOS中显示不完整
92 1
|
iOS开发
iOS UIPageViewController 翻页背景颜色修改
iOS UIPageViewController 翻页背景颜色修改
66 0
|
存储 安全
11-iOS关联对象实现weak属性
11-iOS关联对象实现weak属性
323 0
|
iOS开发
iOS开发-改变图片的颜色
iOS开发-改变图片的颜色
438 0
iOS-UITextView设置行间距,内容颜色(变相设置类似UITextField的placeholder)
iOS-UITextView设置行间距,内容颜色(变相设置类似UITextField的placeholder)
390 0
iOS-UITextView设置行间距,内容颜色(变相设置类似UITextField的placeholder)
|
iOS开发
iOS开发 - 不用copy修饰的字符串属性什么情况下不安全
iOS开发 - 不用copy修饰的字符串属性什么情况下不安全
99 0