如何绘制上面的cashapelayer路径

时间:2014-06-02 10:32:55

标签: ios core-graphics drawingcontext

我有一个CAShapeLayer,我想要在该图层之上绘制.. 我已经使用了UIImageView并添加了该CAShapelayer,现在我开始绘图,因为用户触摸在CAShapelayer路径内移动。但是当用户触摸结束时,我想在CAShape图层上合并绘制的图像视图,这样如果用户再次点击然后使用hitTest方法,我可以再次获得cashape图层的路径。

// tempDrawingImage是我在命中图层上面添加的图像视图。

UIGraphicsBeginImageContext(tempDrawingImage.frame.size);
        [hitLayer drawInContext:UIGraphicsGetCurrentContext()];
        [tempDrawingImage.image drawInRect:tempDrawingImage.frame];
        hitLayer.contents = (id) UIGraphicsGetImageFromCurrentImageContext().CGImage;
        UIGraphicsEndImageContext();

1 个答案:

答案 0 :(得分:0)

您无法轻松将图像转换为CAShapeLayer的路径。

您需要有一个将根据触摸事件修改的drawingPath。 另外还需要第二个CAShapeLayer来绘制当前的drawingPath(因为在绘制时将获得相同的结果,而不是使用图像方法保证合并之后)。 合并时,需要将drawingPath附加到shapeLayer的路径。