Objective c 我怎样才能叫另一个func。当我在MPMediaPlayer上运行视频时?

Objective c 我怎样才能叫另一个func。当我在MPMediaPlayer上运行视频时?,objective-c,xcode,mpmovieplayercontroller,Objective C,Xcode,Mpmovieplayercontroller,假设我有1:00 min.mov视频,我想在视频@0:50时调用其他函数。 我怎么能叫它??现在我使用MPMoviePlayerController来运行视频。 请引导我:D *了解更多信息。当视频为0:50/1:00时,我想调用-(void)Fadescreen方法。 下面是FadesScreen的一些代码。我使用MPMoviePlayerController在没有全屏的情况下运行视频。接下来的事情是,如果我不想使用NSTimer,还有什么方法可以这样做吗 - (void) Fadescree

假设我有1:00 min.mov视频,我想在视频@0:50时调用其他函数。 我怎么能叫它??现在我使用MPMoviePlayerController来运行视频。 请引导我:D

*了解更多信息。当视频为0:50/1:00时,我想调用-(void)Fadescreen方法。 下面是FadesScreen的一些代码。我使用MPMoviePlayerController在没有全屏的情况下运行视频。接下来的事情是,如果我不想使用NSTimer,还有什么方法可以这样做吗

- (void) Fadescreen
{
    [UIView beginAnimations:nil context:nil]; 
    [UIView setAnimationDuration:15];        
    self.blackView.alpha = 1.0;
    [UIView setAnimationDelegate:self];
    [UIView commitAnimations]; 
}

播放视频后立即启动计时器,并在完成50秒后在计时器选择器中执行此代码。。希望这有帮助

编辑有关评论的内容:

MPMoviePlayerPlaybackStateDidChangeNotification在播放电影时发布 播放机的播放状态已更改。没有用户信息字典。 播放状态可以通过编程方式更改(请参见MPMediaPlayback) 协议参考)或通过用户交互。检索回放 电影播放器的状态,访问其playbackState属性。电影 状态已更改的播放机可作为关联对象使用 带着通知

iOS 3.2及更高版本中提供了可用性。声明于 MPMoviePlayerController.h

描述当前播放状态的MPMoviePlaybackState常量 电影播放器的一部分

枚举{ mpmovieplaybackstate停止, MPMoviePlay后台播放, mpmovieplaybackstate暂停, mpmovieplaybackstate中断, mpmovieplaybackstate向前看, MPMoviePlaybackStateSeekingBackward};typedef NSInteger MPMoviePlaybackState


对于
MPMoviePlayerController
,似乎没有此类通知

你所能做的就是安排一个计时器

但不要在调用play on
MPMoviePlayerController
时安排计时器,播放视频需要一些时间。使用
MPMoviePlayerLoadStateDidChangeNotification
检查是否加载了视频


如果电影暂停并继续,请不要忘记使用MPMoviePlayerPlayerBackstateDidChangeNotification管理计时器。。

谢谢,我认为它可以正常工作。但是如果我不习惯使用NSTimer。有没有其他方法可以做到这一点?我想不出任何其他方法,也没有内部方法来满足您的需求。非常感谢。我的老板只是问我,如果我不使用NSTimer,您的老板是否在那里:)我想您的老板这么说是因为他认为它不可靠。。在某种程度上,他是正确的,但只有当你在主线程中使用它时,它才是不可靠的。你总是可以创建一个后台线程并在其中运行计时器。。这样,您的计时器将始终准时启动,并且不会受到任何uiineteraction的影响。。问他,让我知道我是否正确……:)你也可以看看这个答案。。。