说下面的场景: 我绘制了一个四边形形状,它是UIView的蒙版。我将形状图层表示为maskLayer
。 maskLayer
不对称地裁剪UIView的底部。如何在UIBezierPath中制作两行以不同速度动画
但是接下来我想在动画中充分展示我的UIView。动画应该是maskLayer的左侧下降到UIView的底部,并且.2秒后,我的maskLayer的右侧也下降到了UIView的底部,从而充分揭示了UIView的实体。
我的做法是先下拉左线,然后右键一个如下面的代码:
//this quadrilateral will put down left corner to the bottom of screen
var path2 = UIBezierPath()
path2.moveToPoint(CGPointZero)
path2.addLineToPoint(CGPoint(x: 0, y: frame.height))
path2.addLineToPoint(CGPoint(x: frame.width, y: frame.height/goldRatio/goldRatio))
path2.addLineToPoint(CGPoint(x: frame.width, y: 0))
path2.closePath()
//this rectangle path will put down both corner to the bottom of screen
//thus fix the view to its original shape
var path3 = UIBezierPath()
path3.moveToPoint(CGPointZero)
path3.addLineToPoint(CGPoint(x: 0, y: frame.height))
path3.addLineToPoint(CGPoint(x: frame.width, y: frame.height))
path3.addLineToPoint(CGPoint(x: frame.width, y: 0))
path3.closePath()
我已经花了2小时试图弄明白无济于事。请你给我一些关于如何达到这个目的的指示。
的初始状态是这样的:
的最终状态是这样的:
我真的感谢您的帮助!