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的位置才开始渐变为绿色


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

热门文章

最新文章

  • 1
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
    24
  • 2
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    32
  • 3
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    27
  • 4
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
    23
  • 5
    uniapp开发ios打包Error code = -5000 Error message: Error: certificate file(p12) import failed!报错问题如何解决
    143
  • 6
    【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到app store完整流程·不借助第三方上架工具的情况下无需花钱但需仔细学习-优雅草央千澈详解关于APP签名以及分发-们最关心的一篇来了-IOS上架app
    232
  • 7
    app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
    90
  • 8
    深入探索iOS开发中的SwiftUI框架
    143
  • 9
    ios样式开关按钮jQuery插件
    58
  • 10
    Android与iOS生态差异深度剖析:技术架构、开发体验与市场影响####
    75