gpt4 book ai didi

iOS - 未调用 viewDidUnload,但调用了 didReceiveMemoryWarning

转载 作者:行者123 更新时间:2023-12-01 19:16:49 26 4
gpt4 key购买 nike

试图找出某些设备崩溃的原因。我注意到我的 View Controller 正在接收 didReceiveMemoryWarning ,但不是 viewDidUnload .根据苹果的说法:

you would not use didReceiveMemoryWarning to release references to view objects, you might use it to release any view-related data structures that you did not already release in your viewDidUnload method. (The view objects themselves should always be released in the viewDidUnload method.)



所以,

答:为什么是 viewDidUnload不叫?如果从不调用它,我无法在此处删除我的 View 对象。

B: 如果我不应该删除 didReceiveMemoryWarning 中的 View 对象,我还能在哪里做这个?

C: 使用 ARC,我还需要删除 View 对象、将数组设置为 nil 等吗?

最佳答案

正如其他提到的 viewDidUnload:在 iOS 6 中已弃用。但作为您应该知道的附加信息,很少需要卸载 UIView因为 iOS 6 在后台做着神奇的事情 - 它正在破坏支持的位图层 CALayer View (这是迄今为止最大的“部分” UIView )。如果再次需要该 View ,iOS 将调用 drawRect:您在哪里撰写 View ,一切都会好起来的。

欲了解更多信息,请阅读 Joe Conway 的这篇精彩文章:ViewController lifecycle in iOS 6

关于iOS - 未调用 viewDidUnload,但调用了 didReceiveMemoryWarning,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12792950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com