2015-11-06 26 views
1

我有一个简单的游戏,在游戏开始时启动一个计时器。该应用程序有导航控制器。问题是用户可以离开游戏导航,计时器将继续在应用程序的后台进行倒计时。检查用户是否导航到iOS中的另一个视图

有没有一种方法可以检查是否进行了赛格瑞这样我就可以停止游戏和计时器?这里是我现在用来计数定时器的函数:

func Counting(){ 

    if timerCount == 0 // OR if user navigates away from game 
    { 
     timerCount = 7 
     self.timer.invalidate() 
     self.timerRunning = false 

     endTurn() 
    } 
    else 
    { 
     self.timerRunning = true 
     timerCount-- 
     timerLabel.text = "\(timerCount)" 
     print(timerCount) 
    } 

} 

谢谢!

回答

1

简单!你在想的是prepareForSegue方法!任何时候你执行一个segue,这个方法都会在你离开屏幕之前被调用。以下是你如何将它与你的代码整合。

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { 

    self.timerRunning = false 


    // If you need do to logic with your destination VC before load 
    let destinationVC = segue.destinationViewController as destinationVCType 
} 
+0

感谢您的答复!这到底是什么?抱歉!我有点失落 – winston

+0

对不起,我应该更清楚。在执行任何轮回之前触发!所以你可以把你的计时器代码放在里面。但我会编辑我的答案,使其更清楚。 – MQLN

+0

哦!完善!谢谢(你的)信息! – winston

相关问题