Vic*_*tor 1 nstimer viewcontroller ios swift
我NSTimer用来在我的firebase数据库中查找更新.我把代码放在我的内部viewDidLoad().
NSTimer.scheduledTimerWithTimeInterval(5.0, target: self, selector: #selector(DriversInterfaceViewController.CheckFormularChild), userInfo: nil, repeats: true)
Run Code Online (Sandbox Code Playgroud)
当用户在数据库中收到文件时,我希望用户转到另一个文件ViewController.问题是旧的ViewController是在后台运行还是计时器在更改时不会停止View Controller.
let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let nextViewController = storyBoard.instantiateViewControllerWithIdentifier("recievedMission") as! RecievedMissionViewController
self.navigationController!.pushViewController(nextViewController, animated: true)
Run Code Online (Sandbox Code Playgroud)
我如何解雇旧的View Controller或如何停止NSTimer programmatically?谢谢!
只需存储计时器的实例,然后在移动到另一个控制器时使计时器失效,以便首先声明一个实例NSTimer.
var timer:NSTimer?
Run Code Online (Sandbox Code Playgroud)
现在使用此对象存储scheduledTimer的引用.
self.timer = NSTimer.scheduledTimerWithTimeInterval(5.0, target: self, selector: #selector(DriversInterfaceViewController.CheckFormularChild), userInfo: nil, repeats: true)
Run Code Online (Sandbox Code Playgroud)
现在简单地转移到另一个控制器.
self.timer.invalidate()
Run Code Online (Sandbox Code Playgroud)