gpt4 book ai didi

objective-c - 尝试从属性中获取 CGColor 值会导致崩溃

转载 作者:行者123 更新时间:2023-12-04 03:24:56 24 4
gpt4 key购买 nike

我正在尝试设置这样的属性 -

-接口(interface):

@property (readwrite, assign) CGColorRef otherBallColor;

-一些方法:

CGColorRef ballColor = [UIColor colorWithRed:255.0/256.0 green:165.0/256.0 blue:239.0/256.0 alpha:1.0].CGColor;  
[self setOtherBallColor:ballColor];

一旦我尝试访问它崩溃的值 -

-someOtherMethod(在本例中为 drawRect):

CGContextSetFillColorWithColor(context, otherBallColor);

但是如果在“someMethod”中我这样做了 -

CGColorRef ballColor = [UIColor blueColor].CGColor;

...一切正常。任何人都可以解释发生了什么事吗?

非常感谢(PS,对 Objective-C 很陌生,不是一般的编程)

最佳答案

您必须保留返回的 CGColor,您的 [UIColor colorWith...] 创建一个自动释放的实例,因此,当它超出范围(我的意思是自动释放)时,相应的 CGColor 也会被释放。

如果可能的话,我建议您使用 UIColor 而不是 CGColorRef。

关于objective-c - 尝试从属性中获取 CGColor 值会导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3275419/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com