2011-12-26 5 views
0

Я добавлю вид входа в систему над своим приложением NavigationController, при успешном завершении входа в систему, в окне просмотра скрыто. Когда нажатие кнопки выхода из системы будет отображаться. Когда выходите из системы, я хочу освободить память навигационного контроллера, навигатор имеет большое представление и data model, при выходе из системы, хотите освободить все, просто покиньте навигацию.Как освободить память при выходе из приложения?

Есть ли способ для этого? спасибо.

ответ

1

Вы можете использовать UIViewController «с (doc) viewDidDisappear и viewWillAppear обратных вызовов, чтобы избавиться от или воссоздать некоторые из вашей точки зрения и данных. Но управление памятью в iOS, несомненно, сделает домашнее хозяйство для вас и вызовет ваш контроллер viewDidUnload метод в условиях низкой памяти (предупреждения о памяти). Поэтому я предлагаю вам реализовать вашу очистку в методе viewDidUnload и заботиться о настройке вида и данных в viewDidLoad. Смотрите комментарий о viewDidUnload для получения дополнительной информации:

Когда условие низкой памяти происходит и представление текущего контроллера представления не требуется, система может выбрать, чтобы удалить эти взгляды из памяти. Этот метод вызывается после того, как открывается представление контроллера представления, и это ваш шанс выполнить окончательную очистку. Если ваш контроллер просмотра хранит ссылки на представление или его подпункты, вы должны использовать этот метод для освобождения этих ссылок (если вы сначала сохранили объекты) и установите эти ссылки на nil. Вы также можете использовать этот метод для выпуска любых объектов, которые вы создали для поддержки представления, но которые больше не нужны сейчас, когда вид отсутствует. Вы не должны использовать этот метод для выпуска пользовательских данных или любой другой информации, которая не может быть легко воссоздана.

+0

спасибо.это хороший идеал. – user327661

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