Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c CALayer是否保留CGColor对象?_Objective C_Ios_Uikit_Calayer - Fatal编程技术网

Objective c CALayer是否保留CGColor对象?

Objective c CALayer是否保留CGColor对象?,objective-c,ios,uikit,calayer,Objective C,Ios,Uikit,Calayer,我有一个UIView,我想为其设置边框颜色: UIView *myView = ...; myView.layer.borderWidth = 1; myView.layer.borderColor = [UIColor greenColor].CGColor; 这样做安全吗? UIColor对象将自动释放,并随之自动释放CGColor对象。现在,borderColor属性是否保留CGColor以便可以安全地自动删除UIColor,还是必须在单独的实例变量中保留UIColor?CGColor不

我有一个UIView,我想为其设置边框颜色:

UIView *myView = ...;
myView.layer.borderWidth = 1;
myView.layer.borderColor = [UIColor greenColor].CGColor;
这样做安全吗?
UIColor对象将自动释放,并随之自动释放CGColor对象。现在,borderColor属性是否保留CGColor以便可以安全地自动删除UIColor,还是必须在单独的实例变量中保留UIColor?

CGColor不是与
UIColor
相同意义上的对象,但层将使用
CGColorRetain()保留它
这很好

是的。因为图层需要颜色存在,所以它可以正常工作,所以它会保留颜色


虽然我同意文档或@property声明应该声明这一意图。

是的,这就是我感到困惑的原因。谢谢