我用于在我的应用程序YTPlayerView
中显示YouTube
视频。我使用该函数本地的变量来实例化YTPlayerView
inIBAction
函数。类似于以下内容:
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)
}
}
}