iPad MPMoviePlayerController UISplitView中的iOS 5.1问题

时间:2012-03-21 07:08:36

标签: ios ipad mpmovieplayercontroller

我是iOS新手,完成了我在故事板中使用SplitView构建的第二个项目。我在iOS 5中构建了这个,现在在5.1中看到,在纵向视图中,我的popover现在是一个滑块。我读了关于5.1的Apple笔记,并决定让tableview留下来作为滑块。我有一系列电影可以在行选择时触发,在选择时会转到全屏。在主视图可见的情况下,事情按预期正常工作。在didSelectRowAtIndexPath上,视频会在纵向模式下触发并进入全屏模式(我的弹出窗口现在是一个滑块),didSelectRowAtIndexPath视频无法在全屏播放,它实际上在主视图中播放,而我的详细视图内容保持在视图中。我在这里错过了什么?这是我在表视图中的代码(noLandscape是MPMoviePlayerViewController的子类:

(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    VideoInfo *videoInfo =(VideoInfo*) [listData objectAtIndex:indexPath.row];

    NSString *path = [[NSBundle mainBundle] resourcePath];

    path = [path stringByAppendingPathComponent:videoInfo.strFileName]; 

    NSURL *movieURL = [NSURL fileURLWithPath:path];

    MoviePlayerViewCtrler = [[noLandscape alloc] initWithContentURL:movieURL];

    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(moviePlayBackDidFinish:)
                                                 name:MPMoviePlayerPlaybackDidFinishNotification
                                               object:MoviePlayerViewCtrler];


    [MoviePlayerViewCtrler.moviePlayer prepareToPlay];
    [self presentMoviePlayerViewControllerAnimated:MoviePlayerViewCtrler];
    [MoviePlayerViewCtrler.moviePlayer play];

}  

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您需要在detailviewcontroller中播放影片,而不是masterviewcontroller。因此,在您的detailviewcontroller中,需要通过masterviewcontroller中的哪一行选择消息。然后在详细视图中加载相应的影片,然后弹出模态视图以显示影片。