当我们在IOS中已经有UIColor时,为什么会有CGColor?如果它们不同,那么它们之间有什么区别?

时间:2018-02-09 06:02:09

标签: ios uicolor cgcolor

我只是想知道为什么在iOS中有两种获取颜色的方法。我是Swift和Objective C开发的新手,我只是想知道他们是如何以及为什么不同?

1 个答案:

答案 0 :(得分:5)

CGColor来自UIColor以下的级别。这种差异在Swift中不再那么明显了,但你可以在Objective-C中看到这一点,其中UIColor是一个带有方法的Objective-C类,而CGColor是一个C类型,你用C函数访问它

UIColor是UIKit的一部分,它基于Core CGColor所属的核心图形。虽然UIKit适用于iOS(和tvOS),但Core Graphics适用于macOS和iOS,您可以在两者之间共享Core Graphics的代码。

粗略地说,Core Graphics用于绘图,而UIKit及其macOS吊坠AppKit用于GUI显示。