2009-08-05 4 views
0

Если у меня есть набор пользовательских UIViewControllers, что я выпускаю в «перезагрузке» рутина приложений высокого уровня, будет хороший способ, чтобы освободить их взгляды установитьRelease для контроллеров и представлений

self.view = nil; 

в dealloc метод?

ответ

0

Я не уверен, где ваши взгляды, но обычно хотели бы, чтобы удалить их из надтаблицы (если они есть)

[someView removeFromSuperview]; 

, если он сохранил что-то еще, кроме его надтаблицы, вы» d хотят выпустить его

[someView release]; 

предполагается, что ваш retainCount затем 0, dealloc будет называться (в 99% случаев, вы никогда не должны вызывать dealloc себя)

тогда да, вы захотите его обмануть.

someView = nil; 

затем вы можете воссоздать свои взгляды или что бы вы ни делали.

+0

Я удаляю их из супервизора, но это просто влияет на отображение. Они не сохраняются нигде, кроме свойств .view контроллеров. Чувство кишки, глядя на мой график распределения объектов, заключалось в том, что взгляды не освобождались при выпуске UIViewControllers, но я не уверен. Я не вызываю dealloc напрямую, просто помещая эту строку в метод dealloc, чтобы представления были выпущены. – Michael

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

  • Нет связанных вопросов^_^