繁体   English   中英

我的subView没有从SuperView Xcode7 Swift中删除

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM