Objective c 如何在全屏模式下关闭MPMoviePlayerController上的“后退”和“下一步”按钮?
我的iPad应用程序中有一个MPMoviePlayerController。当有视频要观看时,用户点击它,然后可以全屏观看。但是,如果用户在全屏模式下按下“下一步”按钮,电影将变为空白,视频将无法再次播放 反正我不需要“后退”和“下一步”按钮。我如何摆脱它们,或者对其进行排序,以使其不会使我的应用程序崩溃 谢谢Objective c 如何在全屏模式下关闭MPMoviePlayerController上的“后退”和“下一步”按钮?,objective-c,ipad,mpmovieplayercontroller,fullscreen,ios32,Objective C,Ipad,Mpmovieplayercontroller,Fullscreen,Ios32,我的iPad应用程序中有一个MPMoviePlayerController。当有视频要观看时,用户点击它,然后可以全屏观看。但是,如果用户在全屏模式下按下“下一步”按钮,电影将变为空白,视频将无法再次播放 反正我不需要“后退”和“下一步”按钮。我如何摆脱它们,或者对其进行排序,以使其不会使我的应用程序崩溃 谢谢 :-Joe您可以尝试将其控件样式设置为MPMovieControlStyleEmbedded-这将为您提供嵌入式样式控件,它只是一个洗涤器条、一个播放/暂停按钮和一个全屏切换。刚刚在iO
:-Joe您可以尝试将其
控件样式设置为MPMovieControlStyleEmbedded
-这将为您提供嵌入式样式控件,它只是一个洗涤器条、一个播放/暂停按钮和一个全屏切换。刚刚在iOS 7中遇到了这个问题。seek按钮确实会触发类型为mpmovieplaybackstateststopped
的MPMoviePlayerPlaybackStateDidChangeNotification
。因此,如果您希望保留标准UI控件而不创建自定义控件,您可以倾听并适当处理这种情况。这是一种糟糕的方式。。。
只需打开播放器视图的所有子视图,并按索引关闭所需的按钮
[self listSubviewsOfView:playerVC.view andLevel: 0];
- (void)listSubviewsOfView:(UIView *)view andLevel: (NSInteger)level {
NSArray *subviews = [view subviews];
if ([subviews count] == 0) return;
for (UIView *subview in subviews) {
NSString *str = NSStringFromClass([subview class]);
if(subview.hidden == NO){
if([str isEqualToString:@"MPKnockoutButton"] && (level== 15 || level== 17) ){
subview.hidden = YES;
}
}
[self listSubviewsOfView:subview andLevel:level];
}
}
如果我这样做,不幸的是,我仍然在全屏模式下使用默认按钮,因此我仍然有返回和下一步按钮:(嗯。然后你可能必须在AVPlayerLayer
上构建自己的控件集,托管AVPlayer
读取avurlaste
。换句话说,开始研究AVFoundation框架。:)真的吗?如果你试图跳过下一步,苹果的默认电影播放器就会崩溃?这不是一个bug吗?