2

所以看起来好像我的 MPMoviePlayer 不再想要向前搜索,尽管搜索是由 MoviePlayer 在内部完成的,所以我应该做的就是设置通知以知道正在发生搜索。

所以我这样设置我的通知:

[[NSNotificationCenter defaultCenter] addObserver:self          
   selector:@selector(playbackStateDidChange:)            
   name:MPMoviePlayerPlaybackStateDidChangeNotification object:theMovie];

然后,在playbackStateDidChange: 里面我有以下相关代码:

MPMoviePlayerController *mpc = [notification object];
MPMoviePlaybackState state = mpc.playbackState;
if (state==MPMoviePlaybackStateSeekingForward)
    NSLog(@"playback state is seeking forward");

最后,当我按住向前搜索按钮时,playbackStateDidChange 确实被调用,并且确实说“播放状态正在向前搜索”,但我看不到电影行为的明显变化。但是,我第二次尝试向前搜索时,我在控制台中收到此警告:

警告:_inflightSeekRate 已经设置,这意味着在收到 _rateDidChangeNotification 之前已经进行了多次 setRate:error: 调用

所以基本上,前向搜索不能正常工作,我有一种预感,这是一个 MPMoviePlayer 错误,但我在网上找不到任何东西来支持我的主张,也无法回答我的问题。如果有人对如何处理这个问题有任何好主意(也许是一种解决方法),我会全神贯注。

谢谢;

-史蒂夫

PS - 我应该提到我的 MPMoviePlayer 搜索工作得很好,直到我上周升级了我的 X-Code/iPhone SDK。现在它似乎很好,除了前向搜索。

4

0 回答 0