使用Arc,我有一个CgImageRef作为对象(Shape)的属性。最终我将CgImageRef分配给1层或更多层的内容,但最初我只是将它保持在形状中。如果我这样做,事情就好了:
CgImageRef cgImageRef = CGImageCreateWithImageInRect(....);
someLayer.contents = (__bridge id)cgImageRef;
CFRelease(cgImageRef);
但如果我说
myShape.cgImageRef = CGImageCreateWithImageInRect(...);
分析仪报告潜在的内存泄漏 我尝试在ShapeObject中添加一个在cgImageRef上使用CFRelease的dealloc方法,但是然后分析器说我发布了一个我不拥有的对象。 桥接似乎不适用,因为我没有将指针指定给另一个对象。我到底应该做什么?