我不确定何时在下面的代码示例中释放由CGPathCreateMutable创建的路径。

    // iVar
    ivarImageView = [[UIImageView alloc] initWithImage:nil];

    // Clip to shape
    CALayer *imageLayer = [self.ivarImageView layer];
    CAShapeLayer *shapeLayer = [CAShapeLayer layer];
    CGMutablePathRef clipPath = CGPathCreateMutable();
    shapeLayer.path = clipPath;
    imageLayer.mask = shapeLayer;

    [self addSubview:self.ivarImageView];

iVarImageView是保留的ivar。因此,它在对象的生命周期中一直在使用,其shapLayer.path也是如此。那么什么时候才是释放这个道路的合适时间呢?

最佳答案

您可以在下一行之后将其释放:

shapeLayer.path = clipPath;

由于您要分配给shapeLayer.path,因此您不必担心clipPath,因为它将由shapeLayer拥有。

关于ios - 何时发布CGMutablePathRef,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15300292/

10-13 04:27