我有一個視圖控制器播放視頻viewDidLoad
。我有一個觀察者檢查視頻何時完成,以及何時檢測到視頻已完成,調用將視圖控制器推入堆棧的方法。當這個方法被調用,但是,收到以下錯誤控制檯:推視圖控制器時,應用程序崩潰
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSPathStore2 setView:]: unrecognized selector sent to instance 0xc6ef8e0'
我用的代碼如下所示:
....
....
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(advanceToNextView) name:MPMoviePlayerPlaybackDidFinishNotification object:player];
....
....
- (void) advanceToNextView {
UIViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"spoonVC"];
[self.navigationController pushViewController:controller animated:NO];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.navigationController.view cache:NO];
[UIView commitAnimations];
}
我不知道我是什麼做錯了。我已檢查並仔細檢查故事板標識符是否正確。
它看起來像你的應用程序使用的一些內存可能變得慘敗地方。 - [NSPathStore2 setView:]意味着「setView」在NSPathSTore2實例上調用,不應該發生。你有沒有運行配置文件,並消除內存泄漏? – Brian
你使用的是弧形嗎? – HeikoG
@BrianV不,我沒有。我從來沒有運行過這個配置文件,也不太瞭解它。我使用ARC,無論正確還是錯誤,都認爲內存泄漏不是問題? – garethdn