我的应用中有一个YouTubePlayer
(来自here)。我有一个UIViewController
,其中有MainViewController
个视频,其中有一个UITableView
(我们称为UIViewController
)。每当用户点击一个单元格时,它就会打开另一个DetailViewController
(我们将其称为playerView
),其自定义的xib视图称为playerView
。就像我说的,YouTubePlayer
是一个自定义的xib视图,在该视图中是我的DetailViewController
。这就是我在playerContainer.addSubview(playerView)
playerView.frame = CGRect(x: 0, y: 0, width: playerContainer.frame.size.width , height: playerContainer.frame.size.height)
playerView.player.loadVideoID(nowPlayingVideo.id)
DetailViewController
好的,这很好用。但是...每当用户关闭playerView
时,我都希望将MainViewController
移至DetailViewController
。就像用户可以看到后台播放的内容一样。为此,我在override func viewWillDisappear(_ animated: Bool) {
nowPlayingView.addSubview(playerView)
playerView.frame = CGRect(x: 8, y: 8, width: width, height: height)
playerView.layoutIfNeeded()
}
...
nowPlayingView
YouTubePlayer
是另一个自定义的xib视图,并在较早时添加到应用程序的窗口中。所以这就是我开始遇到问题的地方。这段代码很棒。正确更改了框架并将其添加到nowPlayingView,但是playerView
中的YouTubePlayer
似乎已重新加载。因此它将暂停播放,显示一个加载图标,然后继续播放。真烦人。这不应该发生,因为视频已经加载到playerView
中。我敢肯定,只有在更改networkx
的框架时,它才会发生。有人对如何解决这个问题有任何想法吗?
答案 0 :(得分:0)
当视频在加载后继续播放时,是从头开始还是在切换视图之前从中断处恢复播放?