画线时如何避免背景被擦除?
我正在写一个绘画应用程序。
当在 CGContext 中绘制一条线时,线的边界框大小的背景总是被删除 - 该框中的底层线将被清除。
如何避免背景擦除?
I'm writing a paint app.
When drawing a line in CGContext, the background with the size of the bounding box of the line is always got erased - the underlying lines in that box will be cleared.
How to avoid the background erasing?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
[编辑]更好:参见当手指在 iPhone 上移动时如何在图像顶部画一条线。如果您的图像专门添加为背景,而不是直接添加到视图中,它将满足您的要求。
[原文] 保留您已经绘制的所有内容,并在每次通过
setNeedsDisplay
调用drawRect
时重新绘制它。或者,将包含该行的
UIView
设置为UIColor clearColor
。[EDIT] Better: see How to draw a line on top of an image when finger moves on iPhone. If your image is added as a background specifically, not directly to the view, it will do what you're looking for.
[original] Keep everything you've drawn already, and redraw it in every call to
drawRect
viasetNeedsDisplay
.Or, set your
UIView
containing the line toUIColor clearColor
.