2012-09-20 70 views
1

我想支持运行iOS5和iOS6的用户。但是,例如UIViewController的方法-viewDidUnload已在iOS6中弃用。那么如何将它用于运行iOS5的用户,而不是用于运行iOS6的用户?iOS6向后兼容

回答

6

您可以继续在代码中使用此方法,它将不会被调用。如果你真的想要它,你可以在didReceiveMemoryWarning中调用它。事实上,将代码移到旧iOS上也是如此。

您可能感兴趣的其他变化与轮换有关。您既可以实现新的iOS6方法,也可以保留旧的方法,而且它们不会相互干扰。

1

,而它确实是好的,继续有呼吁viewDidUnload ...

从这个WWDC谈判的信息是,你不仅应该没有对iOS6的情况viewWillUnloadviewDidUnload,但你应该只继续并将其移除以用于iOS 5和iOS 6的代码。

苹果伙计给出的WWDC幻灯片演示的理由是苹果做了一些研究,并得出结论,它解决了整个可以避免的一类崩溃者,并且只处理很小的内存。

建议任何目前处于这些对您的应用程序绝对必需的应该可能出现在viewDidDisappear:animated:或dealloc中(对于需要放弃内存的大型共享内容),以及那里将是很多情况下,这是不必要的。

(不是倡导者,只是传达我从WWDC的材料中学到的东西...)