1

我在这个问题上工作了很长时间,无法得到答案,希望有人能帮助我。

我有一个基于 ios ARC 的应用程序。奇怪的是,我只在 iphone 中从下面的代码中得到“[Not A Type class]: message sent to deallocated instance”然后应用程序就崩溃了,尽管它在模拟器中运行良好。我知道这可能是内存问题,但不知道为什么。搜索论坛后,似乎与CGColorRef有关,但我找不到类似的案例。

self.backgroundColor =  CMConstants.greyColor;
CGContextRef context = UIGraphicsGetCurrentContext();
CGColorRef separatorColor = [UIColor colorWithRed:12/255.0 green:12/255.0 blue:12/255.0     alpha:1.0].CGColor;
CGRect paperRect = self.bounds;
4

1 回答 1

3

那是因为 UIColor 在调用后被释放,colorWithRed:green:blue:因为未使用,它导致您的 CGColorRef 没有任何支持。

做这个:

CGColorRef separatorColor = CGColorRetain([UIColor colorWithRed:12/255.0 green:12/255.0 blue:12/255.0     alpha:1.0].CGColor);

完成后:

CGColorRelease (separatorColor);
于 2012-08-07T19:53:31.190 回答