什么对我的 viewController 有很强的参考意义?
What holds strong reference onto my viewController?
我正在使用 removeFromParentViewController
从控制器层次结构中删除 viewController,但是未调用视图控制器的 deinit
。我如何检查哪些内容对它有很强的参考意义?
有什么方法可以查看内存中是否存在参考图?
这是我的 swap` 方法的样子:
public class func swap(fromViewController: UIViewController!, toViewController: UIViewController!, containerViewController: UIViewController!) {
fromViewController.willMoveToParentViewController(nil)
containerViewController.addChildViewController(toViewController)
toViewController.view.frame = containerViewController.view.bounds
containerViewController.transitionFromViewController(fromViewController, toViewController: toViewController, duration: 0.2, options: UIViewAnimationOptions.TransitionCrossDissolve, animations: {}, completion: {finished in
fromViewController.removeFromParentViewController()
toViewController.didMoveToParentViewController(containerViewController)
})
}
在 transitionFromViewController
completion
中,我应该添加/删除目标/源视图吗?
有什么方法可以访问 Swift 中 viewController
的 refCount
?
我尝试用 Instruments
分析代码。弄清楚什么对视图控制器有很强的参考,但无法弄清楚。有帮助吗?
您可以使用 Instruments 分析代码。在 Xcode、select 产品 > 配置文件中。当 Instruments 加载时,select Allocations 作为模板。
这将允许您跟踪哪些对象正在设置哪些强引用。
我正在使用 removeFromParentViewController
从控制器层次结构中删除 viewController,但是未调用视图控制器的 deinit
。我如何检查哪些内容对它有很强的参考意义?
有什么方法可以查看内存中是否存在参考图?
这是我的 swap` 方法的样子:
public class func swap(fromViewController: UIViewController!, toViewController: UIViewController!, containerViewController: UIViewController!) {
fromViewController.willMoveToParentViewController(nil)
containerViewController.addChildViewController(toViewController)
toViewController.view.frame = containerViewController.view.bounds
containerViewController.transitionFromViewController(fromViewController, toViewController: toViewController, duration: 0.2, options: UIViewAnimationOptions.TransitionCrossDissolve, animations: {}, completion: {finished in
fromViewController.removeFromParentViewController()
toViewController.didMoveToParentViewController(containerViewController)
})
}
在 transitionFromViewController
completion
中,我应该添加/删除目标/源视图吗?
有什么方法可以访问 Swift 中 viewController
的 refCount
?
我尝试用 Instruments
分析代码。弄清楚什么对视图控制器有很强的参考,但无法弄清楚。有帮助吗?
您可以使用 Instruments 分析代码。在 Xcode、select 产品 > 配置文件中。当 Instruments 加载时,select Allocations 作为模板。
这将允许您跟踪哪些对象正在设置哪些强引用。