我正在为iPad一个互动的书和我使用UINavigationController
来实现页面和未来之间的导航。 当用户打开该网页,下一个页被压上的导航堆栈的顶部。
我现在15页到应用程序和应用程序崩溃,当我尝试从第14页转到第15页没有错误消息在控制台中,没有在设备的崩溃日志都不是。
每个视图控制器的情节板中的场景有UIImageViews
显示是5MB和20MB之间的图片。 视图控制器的viewDidLoad
方法被调用一次。 所有的应用程序的资产总规模低于200B。 我使用ARC。
我已经跑了使用仪器的内存监控的应用程序。 该应用程序的实际内存消耗大约80MB每增加一个新的页面被打开,并且崩溃时达到800MB(该设备是一个iPad 3)。
为什么会有如此巨大的内存消耗? 这是因为在故事板的场景的UIImageView缓存的图片?
什么是当您使用以释放内存的最佳方式
UINavigationController
和ARC?
我尝试添加所有视图控制器的子视图设置为nil在视图控制器的viewDidDisappear:
的方法,但内存消耗保持不变。