详见腾讯模拟试题答案~ O(∩_∩)O哈哈~
当收到内存警告时,如果viewcontroller未显示(在后台),会执行didReceiveMemoryWarning -> viewDidUnLoad;如果viewcontroller当前正在显示(在前台),则只执行didReceiveMemoryWarning。
当重新显示该viewController时,执行过viewDidUnLoad的viewcontroller(即原来在后台)会重新调用loadview -> viewDidLoad。
所以,在这几个函数里面释放掉暂时不用的资源占用就行啦,缓存神马的。其实不懂IOS,囧,哪位大哥来阐述下?
每个app可用的内存是被限制的,如果一个app使用的内存超过20M,则系统会向该app发送Memory Warning消息。收到此消息后,app必须正确处理,否则可能出错或者出现内存泄露。
app收到Memory Warning后会调用:
UIApplication::didReceiveMemoryWarning -> UIApplicationDelegate::applicationDidReceiveMemoryWarning,然后调用当前所有的viewController进行处理。因此处理的主要工作是在viewController。
我们知道,创建viewcontroller时,执行顺序是loadview -> viewDidLoad。
兄弟 我刚交完卷 来查就看到楼上回答 哈哈 笑晕啊
好好模拟
楼主是什么岗位
哈哈,哥们好迅速