2010-02-20 1 views

ответ

8

Вы должны использовать «ленивую загрузку» данных на все ваши взгляды. Например, если вы показываете список данных в представлении таблицы, вы должны освободить данные, когда ваш контроллер просмотра получает didReceiveMemoryWarning и устанавливает указатель данных на нуль.

Большая часть примера кода Apple подчеркивает эту ленивую технику загрузки.

applicationDidReceiveMemoryWarning - это сообщение, отправленное на ваш AppDelegate. Вы должны освободить нежелательные глобальные данные, которые вы храните в AppDelegate.

Классическим примером является Safari. Open скажите 2-3 вкладки в Safari (на iPhone Simulator). Пусть все вкладки загружают содержимое веб-страницы. Попробуйте переключиться между различными вкладками. Вы должны заметить, что контент остается там и не очищается. Теперь из меню закройте «Имитировать предупреждение памяти». Теперь, когда вы переключаетесь на другую вкладку, Safari снова загрузит содержимое. Внутри произошло то, что URL-адрес запоминается, но все содержимое веб-страницы было выпущено в методе didReceiveMemoryWarning.

Вы также должны реализовать аналогичные механизмы в своем приложении.

Смежные вопросы