我在Draw方法中绘制了一个背景图片,上面有几条路径(CGPath
)。
为避免每次调用setNeedDisplay
时绘制背景图像(当路径发生变化时),我创建了一个包含content = background image
的图层。
设置背景图片时添加此图层:
Layer.InsertSublayer(backgroundLayer, 0);
路径是在Draw方法中绘制的:
public override void Draw(RectangleF rect)
{
base.Draw(rect);
using (CGContext context = UIGraphics.GetCurrentContext())
{
CGPath path = new CGPath();
...
context.DrawPath(CGPathDrawingMode.FillStroke);
}
}
似乎路径的绘制是在“主”Layer
中进行的,即我创建的背景图层的superlayer
(这是我的假设,不知道当然)。
是否可以在不同的图层中绘制形状(这样我可以在超级图层中添加第二层并更改子图层的位置)?
感谢您的帮助,
升。皮尼奥