我有一個包含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方法。 –