我正在使用几行UIViewController
s进行演示。在每一个屏幕上,我都需要播放视频。
这是我使用的每一个这些屏幕,用于播放视频的代码:使用AVPlayer播放视频 - 视频在某个点停止
NSURL *videoURL = [[NSBundle mainBundle]URLForResource:@"video" withExtension:@"mp4"];
AVPlayer *avPlayer = [[AVPlayer alloc]initWithURL:videoURL];
AVPlayerLayer *avPlayerLayer =[AVPlayerLayer playerLayerWithPlayer:avPlayer];
[avPlayerLayer setFrame:CGRectMake(0, 0, videoWidth, videoHeight)];
_videoView.layer.sublayers = nil;
[_videoView.layer addSublayer:avPlayerLayer];
[avPlayer seekToTime:kCMTimeZero];
[avPlayer play];
首先屏幕的UIViewController这里用户可以选择其中一个方案。在主屏幕上,我还使用上面编写的代码显示视频。用户可以点击下一个按钮,然后我显示下一个屏幕。
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
HomeViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"home_vc"];
[self.navigationController pushViewController:vc animated:YES];
当场景完成后,我再次显示主屏幕,用户可以选择下一个场景。
经过几个屏幕我有视频问题。
在我应该看视频的地方,我只能看到一个黑屏。我猜这个问题与内存有关,但我找不到解决方案。
你可能莫名其妙地保留您的控制器。请添加您在控制器中使用的代码。 – rkyr