剪切清晰的子视图

Posted

技术标签:

【中文标题】剪切清晰的子视图【英文标题】:Clipping behind clear subview 【发布时间】:2014-12-29 15:15:08 【问题描述】:

ios 8 中,FaceTime 有一个 UITableView,后面有一个 UIVisualEffectView 模糊实时摄像头馈送。当您在单元格上滑动时,单元格会移动到删除按钮中擦除,但它不会完全显示在 UITableViewCell 后面。

我的问题是,有没有一种简单的方法可以用普通子视图复制这种行为?即,有一个清晰的 CALayer 剪辑一个不透明的 CALayer,而清晰的 CALayer 不显示其包含 UIView 的子视图。我假设我要做的是“擦除”过渡。

我对使用 CALayers 和 drawRect: 还是很陌生:并且希望在开始时有一些方向。

【问题讨论】:

【参考方案1】:

要回答我自己的问题,您需要使用 CALayer 并将其存储在 backgroundView 的 layer.mask 属性中。然后为这个遮罩层的位置和边界设置动画,瞧。

【讨论】:

以上是关于剪切清晰的子视图的主要内容,如果未能解决你的问题,请参考以下文章

视频剪切合并器

从android中的视图中剪切一个形状

剪切旋转的开关视图

父 UIView 不包含/剪切子视图

如何剪切面具上的列表视图?

向左滑动时未剪切子视图以删除 UITableViewCell