我有一个MPMoviePlayerController设置:
self.moviePlayerController = [[MPMoviePlayerController alloc] init];
[self.moviePlayerController.view setFrame:frame];
// hide controls initially
[self.moviePlayerController setControlStyle:MPMovieControlStyleNone];
[self.view addSubview:self.moviePlayerController.view];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(loadStateChanged:) name:MPMoviePlayerLoadStateDidChangeNotification object:self.
moviePlayerController];
然后当通知被解雇时:
-(void)loadStateChanged:(NSNotification*)notification {
if (self.moviePlayerController.controlStyle == MPMovieControlStyleNone) {
[self.moviePlayerController setControlStyle:MPMovieControlStyleDefault];
}
}
在初始播放时效果很好,播放开始时不显示控件,但点击视图会显示控件。
然而,当电影已经播放并且我开始播放另一个URL时,我隐藏了控件,但是在第二部电影的播放开始后它们又重新出现:
[self.moviePlayerController setContentURL:videoURL];
[self.moviePlayerController setControlStyle:MPMovieControlStyleNone];
[self.moviePlayerController play];
通知再次触发,并且它正确地controlStyle
MPMovieControlStyleNone
,然后我将其设置为MPMovieControlStyleDefault
。
任何人都有这方面的经验,有没有办法确保控件在第二次播放时保持隐藏,但实际上当用户点击电影视图时可见。
谢谢!