CGColorRef导致崩溃

时间:2012-03-18 22:41:34

标签: iphone objective-c core-graphics

我的代码崩溃了,并且在传递2个CGColorRefs时我一直跟踪到一线崩溃。以下是对象:

CGColorRef startColor = [[UIColor colorWithWhite:0.92 alpha:1.0]CGColor];
CGColorRef endColor = [[UIColor colorWithWhite:0.94 alpha:1.0]CGColor];

NSLog(@"start: %@ end: %@", startColor, endColor);

NSLog返回崩溃。他们怎么了?

编辑 - 崩溃的地方:

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    CGFloat locations[] = { 0.0, 1.0 };
NSArray *colors = [NSArray arrayWithObjects:(__bridge_transfer id)startColor, (__bridge_transfer id)endColor, nil];

1 个答案:

答案 0 :(得分:13)

ARC。弧。弧。 UIColor-> CGCOlor是ARC最重要的陷阱之一......

在这里深入了解:

http://weblog.bignerdranch.com/?p=296

我在这里写了一些关于ARC的一般最佳实践(包括你的问题):

http://amattn.com/2011/12/07/arc_best_practices.html