[英]My subViews are not being removed from SuperView Xcode7 Swift
我有一個游戲,該游戲具有調用另一個SKScene的功能。 這SKScene是我的gameOver場景。 這個游戲場景有一個UIButton,UIButton鏈接到一個函數,該函數刪除該場景中的所有UIButton,然后再次調用常規游戲場景。 如果我運行了3或4次,則按鈕將被刪除,游戲將重新開始,不會出現任何問題。 但是在第4或第5場比賽中,一旦我按了“再次播放”按鈕,則當游戲處於常規游戲屏幕類別中時,這些按鈕將停留在屏幕上,並且沒有任何功能。 這是怎么回事,因為肯定是因為我在函數中打印了某些內容而調用了該函數。 有人可以幫助解決這個問題。
func playAgainAction(sender: UIControlEvents){
removeGameOverButtons()
let reveal : SKTransition = SKTransition.crossFadeWithDuration(0.5)
let scene = GameScene(size: self.view!.bounds.size)
scene.scaleMode = .AspectFill
self.view?.presentScene(scene, transition: reveal)
}
func removeGameOverButtons(){
self.playAgainButton.removeFromSuperview()
self.noAdsButton.removeFromSuperview()
self.rateButton.removeFromSuperview()
self.shareButton.removeFromSuperview()
self.leaderboardsButton.removeFromSuperview()
self.watchAdsButton.removeFromSuperview()
print("There should be no reason that there labels are not being removed")
}
self.rateButton = UIButton(type: UIButtonType.Custom)
self.rateButton.setImage(rateButtonImage, forState: .Normal)
self.rateButton.frame = CGRectMake(self.frame.size.width*3/4 - 26, self.frame.height*3/5 - 95 - 95, 110,75)
self.rateButton.layer.anchorPoint = CGPointMake(1.0, 1.0)
self.rateButton.layer.zPosition = 0
//Attach an action to the play again button
self.rateButton.addTarget(self, action: "noAdsAction:", forControlEvents: UIControlEvents.TouchUpInside)
delay(0.5){
view.addSubview(self.rateButton)
}
這是我添加按鈕的代碼副本。 因此,它可以在前幾次工作,但是在時間3或4不會被刪除。 游戲上所有“我的按鈕”的添加完全相同
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.