相关疑难解决方法(0)

- [Not A Type retain]:发送给deallocated实例的消息

我已将我的应用转换为使用ARC.

在我有以下代码行之前:

NSArray *colors = [NSArray arrayWithObjects:startColor, endColor, nil];
Run Code Online (Sandbox Code Playgroud)

由于ARC不允许将非Objective-C指针类型隐式转换为'id',所以我重写了这样的行:

NSArray *colors = [NSArray arrayWithObjects:(__bridge id)startColor, (__bridge id)endColor, nil];
Run Code Online (Sandbox Code Playgroud)

一切都在模拟器上正常工作,但是在设备上,应用程序在提到的行上崩溃并显示错误消息:

-[Not A Type retain]: message sent to deallocated instance
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决?

ios ios5 automatic-ref-counting

18
推荐指数
1
解决办法
5551
查看次数

CGColorRef导致崩溃

我的代码崩溃了,当我通过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);
Run Code Online (Sandbox Code Playgroud)

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

编辑 - 崩溃的地方:

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

iphone core-graphics objective-c

5
推荐指数
1
解决办法
1533
查看次数