在uiview中缓存绘图
Posted
技术标签:
【中文标题】在uiview中缓存绘图【英文标题】:cache drawing in a uiview 【发布时间】:2012-03-08 21:13:18 【问题描述】:我有一个 UIView,它允许用户在屏幕上画一条线 (myLine)。这个 UIView 位于另一个 UIView 的正上方,该 UIView 有几个用 CGPaths 绘制的形状。当用户点击这些形状之一时,我需要擦除 myLine 位于这些其他形状之一之上的任何部分,就好像我正在用橡皮擦擦除像素一样。 解决这个问题的最佳方法是什么?
我需要删除线的浅蓝色部分,留下深蓝色部分
1)(当前方法部分有效)我可以使用底部视图中的路径形状作为顶部视图中的遮罩,但它只是遮盖 UIView。如果我以后需要更改蒙版位置,矢量笔画仍然存在。 (我知道这是因为我所有的线都在视图的drawrect中重新绘制)
2) 在我画完每一行之后,我是否应该以某种方式将绘图缓存为图像,然后 把三角形里面的部分切掉?
3)有没有更好的方法来解决这个问题?
【问题讨论】:
【参考方案1】:此链接提供了答案: Building a Simple Drawing App
我将绘图缓存到位图上下文中,然后剪掉 位图不需要的部分。
【讨论】:
以上是关于在uiview中缓存绘图的主要内容,如果未能解决你的问题,请参考以下文章