在MPMoviePlayerController之上添加视图

时间:2014-01-08 16:14:34

标签: ios objective-c uiview mpmovieplayercontroller

我有一个全屏播放的MPMoviePlayerController。然后我想在电影上方添加一个UIButton,但它没有出现。

我已经尝试在电影视图上方插入视图,如下所示:

mpc =[[MPMoviePlayerController alloc]initWithContentURL:url];
[mpc setMovieSourceType:MPMovieSourceTypeFile];   

[self.view addSubview:mpc.view];
**[self.view insertSubview:self.backButton aboveSubview:mpc.view];**

[mpc setFullscreen:YES];

mpc.controlStyle = MPMovieControlStyleNone;

[mpc play];

我也尝试将子视图添加到电影控制器视图中,就像我在类似的问题中读到的那样:

**[mpc.view addSubview:self.backButton];**
[self.view addSubview:mpc.view];

当我记录子视图列表时,我总是在MPMovieView和MPSwipable视图之后的最后位置获得该按钮,但它没有显示。

编辑:

我已经能够通过禁用[mpc setFullscreen:YES]并将电影视图的帧设置为父视图的边界并设置纵横填充缩放模式来解决这个问题。我猜不是最干净的解决方案,但它对我有用。

mpc.view.frame = CGRectMake(self.view.bounds.origin.x, self.view.bounds.origin.y, self.view.bounds.size.width, self.view.bounds.size.height);

UIButton *myButton = [[UIButton alloc]initWithFrame:CGRectMake(100, 500, 100, 100)];

myButton.backgroundColor = [UIColor blueColor];

mpc.controlStyle = MPMovieControlStyleNone;
mpc.scalingMode = MPMovieScalingModeAspectFit;

[self.view addSubview:mpc.view];

[self.view addSubview:myButton];

[mpc prepareToPlay];

1 个答案:

答案 0 :(得分:3)

在您写下时,在MPMoviePlayerController上添加按钮:

[mpc.view addSubview:self.backButton]

也许你的按钮是隐藏的或没有。 尝试设置你的播放器:

mpc.controlStyle = MPMovieControlStyleFullscreen;

无论如何,我这样做:

 MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] init];
 mp.controlStyle = MPMovieControlStyleFullscreen;
 UIButton *btnInfo = [[UIButton alloc] initWithFrame:your_frame];
 [mp.view addSubview:btnInfo];

无论如何,请不要使用[mpc play];您最好使用[mpc prepareToPlay];(效果问题)