我有一个益智游戏,我想添加500件选项。我目前正在使用drawRect
来绘制作品的形状。我预先计算碎片的形状,并使用路径剪切图像,如下所示:
- (void) drawRect:(CGRect)rect
{
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextBeginPath(ctx);
CGContextAddPath(ctx, self.path);
self.boundingBox = CGContextGetPathBoundingBox(ctx);
CGContextClosePath(ctx);
CGContextClip(ctx);
[self.delegate.image drawAtPoint:CGPointZero blendMode:kCGBlendModeNormal alpha:1.0];
CGContextDrawPath(ctx, kCGPathFillStroke);
}
这会使应用程序崩溃,并通过屋顶发送内存。我注释掉了drawRect
,并且视图添加成功并且非常快。这适用于100件,但更高的任何东西都会使应用程序崩溃。如果我注释掉drawRect
中的所有代码,我仍然会遇到崩溃。
注意我没有遇到崩溃,我得到Process finished with exit code 0
如何在这里改善表现?