每当我的视图控制器之一被解除/弹出/卸载时,我都需要在共享资源中执行一些清理?这可能是当用户点击该单个屏幕上的后退按钮时,或者调用 popToRootViewController 时(在这种情况下,理想情况下我能够清除弹出的每个控制器。)
显而易见的选择是在 viewDidUnload 中执行此操作,但当然,这不是卸载的工作原理。有没有办法捕获 ViewController 从堆栈中删除的所有情况?
编辑:忘记提及我正在使用 Xamarin 执行此操作,因此可能会也可能不会影响答案。
override func viewDidDisappear(animated: Bool) {
super.viewDidDisappear(animated)
if (isBeingDismissed() || isMovingFromParentViewController()) {
// clean up code here
}
}
编辑 swift 4/5
override func viewDidDisappear(_ animated: Bool) {
super.viewDidDisappear(animated)
if (isBeingDismissed || isMovingFromParent) {
// clean up code here
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)