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