正如标题所示,我有self.view
我将mask
(链接)属性添加到另一个视图中,但当我使用self.view
向addSubview
添加更多视图时面具被删除。这是为什么?感谢
我最初遇到this问题并意识到mask
视图正在发布。
在我的示例中,当我点按UIImageView
中的屏幕时,我添加了动画UIBezierPath
的{{1}}动画。
这是代码:
addView
答案 0 :(得分:0)
你的面具就在那里,它只是它的视图大小的2.1倍,因此它总是覆盖整个事物,所以你可以看到一切。你的代码中有一个错误:
if pan.state == .began {
if delta > 0 {
panStarted = true
circle.updateSize(-delta)
}
在.began
处永远不会有翻译,因此这段代码永远不会被命中,这意味着您的处理程序中没有任何其他内容被处理。此代码应该只设置panStarted
标志。
你需要拖动很长的路才能让遮罩生效,当你释放时,它会弹回到视图大小的2.1倍。
通过将圆圈添加为子视图而不是蒙版,您可以非常轻松地看到这一点。用2.1
替换所有0.5
值会产生这种效果:
总而言之,你的面具没有任何问题,但使用周围的代码。