在显示视频时让NSTimer继续前进

时间:2015-11-10 09:19:36

标签: ios nstimer avplayer

我知道有很多关于在后台运行计时器的问题,例如这一个:how to keep running NSTimer when app goes in background,如果我什么都没有,我肯定会使用它的答案,但我的问题不是真正的应用程序去了在背景中(也就是说,如果我正确理解了这意味着什么)。

所以在这里,我有一个带有计时器的视图控制器,我用它作为倒计时,从这个视图控制器可以看到视频。我使用AVPlayerViewController作为该部分。 :

AVPlayer *player = [AVPlayer playerWithURL:videoURL];
AVPlayerViewController *playerViewController = [AVPlayerViewController new];
playerViewController.player = player;
[self presentViewController:playerViewController animated:YES completion:nil];

因此我拥有一个AVPlayerViewController高于拥有计时器的人,计时器停止计数直到我离开AVPlayerViewController。我想继续计算,有没有办法在不将当前时间写入文件等的情况下这样做?

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

这种行为可能有几个原因,但我注意到的常见事情(在我的职业生涯中多次看到)会使viewWillDisappearviewDidDisappear方法中的计时器失效,在viewWillAppearviewDidAppear方法上启动它。如果要在视图控制器被关闭之前运行计时器,那么您应该在viewDidLoad方法中启动计时器并在解除视图控制器之前使其无效(或者当您获得所需的结果时,{{3 }})