所以可以说我的视图上有一个 UIWebView,嵌入了一个 YouTube 视频。该视图连接到导航视图控制器。这意味着当我单击一个按钮时,它会将视图推送到堆栈上。但是当我播放 youtube 视频并转到下一个视图时。视频仍在播放。在转到另一个视图时,是否有办法停止嵌入 youtube 视频?
如果我在 UICollectionView 中有多个带有嵌入 YouTube 视频的 UIWebView 的单元格怎么办?我没有参考所有 UIWebViews 设置为零。(抱歉之前的混淆)
所以可以说我的视图上有一个 UIWebView,嵌入了一个 YouTube 视频。该视图连接到导航视图控制器。这意味着当我单击一个按钮时,它会将视图推送到堆栈上。但是当我播放 youtube 视频并转到下一个视图时。视频仍在播放。在转到另一个视图时,是否有办法停止嵌入 youtube 视频?
如果我在 UICollectionView 中有多个带有嵌入 YouTube 视频的 UIWebView 的单元格怎么办?我没有参考所有 UIWebViews 设置为零。(抱歉之前的混淆)
如果您使用Youtube Javascript api播放视频 - 您可以在离开当前视图时暂停它
-(void)viewWillDisapper:(BOOL)animated
{
[super viewWillDisappear:animated];
[webView stringByEvaluatingJavaScriptFromString: @"player.pauseVideo();"];
}
当我移动到另一个页面时,我所做的只是将 UIWebView 的内容设置为 nil,这会完全删除视频播放器,但如果你只是想暂停视频以便用户在他们回来时可以恢复,你会有使用 javascript 与 youtube 播放器交谈。有关一种方法,请参阅如何在 UIWebView 中暂停媒体播放。
您需要在 UIWebView 中加载一个空白页面以停止视频播放。这是一个快速的方法:
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated]
[yourWebView loadHTMLString:nil baseURL:nil];
}