我有一个包含4个用UIBezierPath制作的圆圈的视图的应用程序。只在视图第一次显示时出现viewDidAppear动作
而且你可以在某个圈子单击以获取有关项目
的事情是一个细节,圆是有一些限制的子视图,所以我可以不要在viewDidLoad方法中绘制它们(我试过但它是一团糟),所以整个绘图工作都是在viewDidAppear方法中完成的,但是每次出现视图时都会绘制圆。
所以,如果我点击了一圈再回来的圆圈查看了大量的时间,我结束了:
我也试过用viewDidLayoutSubviews方法,但我得到一个无限循环。所以我问是否有人有想法来处理这个问题。 (可能最干净的方式)
这是我的viewDidAppear样子:
override func viewDidAppear(animated: Bool) {
createCircle(firstCircle, text: "Breathe", color: blue, directionForAdjustment: 1, identifier: 0)
createCircle(secondCircle, text: "Cocoon", color: green, directionForAdjustment: 1, identifier: 1)
createCircle(thirdCircle, text: "Smokeless", color: cyan, directionForAdjustment: -1, identifier: 2)
createCircle(fourthCircle, text: "Sleep", color: purple, directionForAdjustment: -1, identifier: 3)
}
只需添加一个标志在它的init圈后 –
你的圈子值的变化? 之后没有任何改变,你是写代码的viewdidload方法。 –