【发布时间】:2018-04-09 02:19:59
【问题描述】:
当我执行以下代码时,AVPlayerViewController 会显示在单元格上,但是当我再次点击播放器时,会执行 tableView:(UITableView *) tableView didSelectRowAtIndexPath 方法。我想要的是在播放视频时,点击在播放器上,将显示或隐藏控件而不是执行 tableView: (UITableView *) tableView didSelectRowAtIndexPath
-(void)showVideoInView:(UIView *)view URL:(NSURL *)url {
if (!url || !view) {
return;
}
CGRect frame = CGRectIntegral(view.bounds);
UIViewController *video;
if (@available(iOS 8.0,*)) {
AVPlayerViewController * videoController = [[AVPlayerViewController alloc]init];
videoController.view.frame = frame;
videoController.player = [AVPlayer playerWithURL:url];
if (@available(iOS 10.0,*)) {
videoController.player.automaticallyWaitsToMinimizeStalling = NO;
}
[videoController.player play];
video = videoController;
}else {
MPMoviePlayerViewController *videoController = [[MPMoviePlayerViewController alloc]initWithContentURL:url];
videoController.view.frame = frame;
[[videoController moviePlayer] play];
video = videoController;
}
[view addSubview:video.view];
}
【问题讨论】:
标签: ios uitableview avplayer avplayerviewcontroller