iOS上是否可以在某些CGRect中制作常规UIView并向其添加子视图,然后告诉该容器UIView:
containerView.layer.path = someClosedUIBezierPath
然后所有的子视图都会根据它的父容器视图弯曲吗?
我知道每个UIView都拥有它自己的CALayer,这将是我的起点。
我看过动画的例子,但我没有看到上面的内容(也许是因为它不存在:))
答案 0 :(得分:7)
这有点晚了,但也许会对某人有所帮助:
您可以使用CAShapeLayer
和视图图层的mask
属性将视图剪切为贝塞尔曲线路径:
CAShapeLayer shapeMask = [[CAShapeLayer alloc] initWithFrame:containerView.bounds];
shapeMask.path = someClosedUIBezierPath.CGPath;
containerView.layer.mask = shapeMask;
[shapeMask release];