删除子视图的一部分

时间:2014-10-02 13:25:08

标签: ios objective-c core-graphics drawrect

我有mainView,我在那里画画让我们在背景中说出一张照片。 mainView也有3个subviews,可以相互拖动。 subviews是具有clearColor背景和redColor框架的正方形。问题是,如果将一个视图拖到第二个视图上,我可以看到下面的第二个视图'第一视图。我想删除它(只有重叠的部分),但不知道该怎么做。我将在下面的屏幕截图中展示它。

在左边是当前的情况,在右边 - 期望的一个。是否可以删除部分子视图..? image

2 个答案:

答案 0 :(得分:0)

在一个视图的-drawRect方法中,这样的自定义效果有时更容易做到,因为否则部分擦除的有边框的矩形需要知道另一个视图。绘制底部矩形边框,然后擦除顶部矩形,然后绘制顶部矩形的边框。您也可以使用多个CGLayer进行混合,以获得类似的效果和更多的抽象。

答案 1 :(得分:0)

如果你有一个清晰的彩色背景,这是透明的,这就是你的观点正在窥视的原因。将其更改为[UIColor whiteColor]。