我使用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的done按钮。我的问题是内存水平没有降到我向玩家展示之前的水平。Instruments显示了一些与UIWebView相关的内存泄漏,但我无法联系到源代码。任何帮助都将不胜感激。以下是我到目前为止在单击done按钮关闭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)
}
}
}发布于 2016-03-08 01:09:31
明白了!!在仪器中进行..while测试时,它在深入研究内存泄漏时显示了此消息
UIWebSelectionAssistant addNonEditableForceTextSelectionGestureRecognizersToView:
通过在线搜索,我找到了https://forums.developer.apple.com/thread/25526
这里说这是iOS 9中的UIWebView问题,在iOS 8中不会发生。当我在iOS 8模拟器中运行我的应用程序时,没有泄漏。所以我猜这毕竟是苹果的问题。希望他们能尽快解决这个问题。
https://stackoverflow.com/questions/35683030
复制相似问题