gpt4 book ai didi

ios - 方法被多次调用

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:40:14 24 4
gpt4 key购买 nike

我在我的项目中使用 MPMoviePlayer。我已经注册了电影播放器​​完成通知,它运行良好。每当收到电影播放器​​错误通知时,我都会显示错误警报。但问题是错误警报显示多次。发生这种情况是因为针对同一错误同时收到了多个通知。我曾尝试使用 bool 变量来控制警报显示,但由于同时收到通知,因此无法正常工作。我应该采用什么方法,请提出建议。我的通知方法代码:

MPMovieFinishReason reason = [[[notification userInfo] objectForKey:MPMoviePlayerPlaybackDidFinishReasonUserInfoKey] intValue];
NSError *errorMsg = [[notification userInfo] valueForKey:@"error"];
NSString *errmsg = [errorMsg localizedDescription];
if (reason == 1 && !errorReceived){
NSError *errorMsg = [[notification userInfo] valueForKey:@"error"];
NSString *errmsg = [errorMsg localizedDescription];
[self showErrorAlert];
}

对于注册通知:

NSNotificationCenter* center = [NSNotificationCenter defaultCenter];
[center addObserver:self selector:@selector(moviePlayerDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:self.player];

用于移除观察者,在viewWillDisappear

[[NSNotificationCenter defaultCenter]removeObserver:self];

最佳答案

一旦报错就移除观察者

[[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:player];

点击播放后添加观察者。

关于ios - 方法被多次调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21771957/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com