Dan*_*ile 15 objective-c uicolor ios
我使用相同颜色的两种变体,浅色和深色版本来创建渐变.
码:
CAGradientLayer *gradient = [CAGradientLayer layer];
UIColor *light = [baseColor lightVersion];
UIColor *dark = [baseColor darkVersion];
gradient.colors = [NSArray arrayWithObjects:(id)[light CGColor], (id)[dark CGColor], nil];
Run Code Online (Sandbox Code Playgroud)
问题是,我注意到CGColor原始UIColor版本的版本不同.这是为什么?是什么之间的区别UIColor和CGColor他们为什么不同?
Nir*_*iya 23
UIColor是从继承NSObject和具有相关联UIKit Framework,而CGColor与之相关联CoreGraphics和CGColor源自CFType.
因此,如果您正在使用UIKit元素,那么您可以使用UIColor,但如果您使用Core Graphics使用绘图或与CALayer您合作必须使用CGColor.
根据UIColor的文档
UIKit中的许多方法都要求您使用UIColor对象指定颜色数据,对于一般颜色需求,它应该是指定颜色的主要方式.此对象使用的颜色空间已针对基于iOS的设备进行了优化,因此适合大多数绘图需求.但是,如果您更喜欢使用Core Graphics颜色和颜色空间,则可以这样做.
| 归档时间: |
|
| 查看次数: |
7123 次 |
| 最近记录: |