以圆圈编程方式定位视图

时间:2017-06-28 05:27:25

标签: ios swift animation uibezierpath

我想要按下按钮时预先放置圆圈围绕中间圆圈。例如,一个中间圆圈,5个圆圈围绕中间圆圈均匀地围成一圈,然后按下一个按钮,它们开始绕轨道运行。

我正在使用BezierPathkeyframe动画围绕中间一个制作单个圆轨道。我也理解如何添加更多的圆圈并让它们从动画中的不同起始角度开始。

我不明白的是在动画开始之前如何在视图中预先放置圆圈。在按下按钮之前动画不会运行,因此在动画开始之前,轨道圆圈需要位于其“起始位置”,即:

let circlePath = UIBezierPath(arcCenter: center, radius: 100, startAngle: 360 / 3, endAngle:CGFloat(M_PI)*2, clockwise: true)

每个圈子的startAngle都需要在动画开始前就已经在屏幕上的位置。

我无法将视图放在storyboard中,因为我看不到任何方法可以在圆圈周围的不同程度上完美地设置圆圈。

我正在寻找的就像使用圆圈路径上的度数并在CGPoint中找到superview所以我可以设置我的轨道视图的中心。所以说出类似的话:

对于我想要在轨道圆上1/5的视图,抓住360/72的CGPoint,然后将circle.center设置为该点。

我不知道这是否可能?如果不是这样的另一种方法呢?

0 个答案:

没有答案