【发布时间】:2016-02-28 13:19:55
【问题描述】:
我正在使用YTPlayerView 在我的应用程序中显示YouTube 视频。我在 IBAction 函数中使用该函数的本地变量来实例化 YTPlayerView。大致如下:
IBAction func presentPlayer(sender: UIButton){
let playerViewController = UIStoryboard(name: "Player", bundle: nil).instantiateViewControllerWithIdentifier("YoutubePlayer") as! PlayerViewController
self.presentViewController(playerViewController, animated: true, completion: nil)
}
PlayerViewController 有一个YTPlayerView 类型的类变量。有一个完成按钮可以关闭PlayerViewController。我的问题是内存水平没有下降到我展示播放器之前的水平。 Instruments 显示了一些与 UIWebView 相关的内存泄漏,但我无法找到源。任何帮助,将不胜感激。以下是我在单击完成按钮时关闭PlayerViewController 时所做的事情:
IBAction func donePressed(sender: UIButton){
self.customYTPlayer.stopVideo()//customYTPlayer is my YTPlayerView
self.customYTPlayer.removeWebView()
self.removeYTPlayerSubviews(self.customYTPlayer)
self.customYTPlayer=nil
}
removeYTPlayerSubviews 函数我写成:
func removeYTPlayerSubviews(ytplayerView:UIView){
if ytplayerView.subviews.count > 0{
for subview in ytplayerView.subviews{
subview.removeFromSuperview()
self.removeYTPlayerSubviews(subview)
}
}
}
【问题讨论】:
标签: ios memory-leaks ytplayerview