Если позиционирование требуется из-за действия, которое произошло в модальном представлении, вы должны использовать явный обратный вызов делегата.Это позволит вам четко указать поток управления и конечное поведение вашего приложения.
Затем вы должны определить протокол, который имеет конкретные методы, которые содержат соответствующую информацию о предпринятых действиях.Когда действие происходит в модальном режиме, выполните метод протокола для делегата, и он может отреагировать на это событие (для вас это, кажется, изменение расположения кнопок).
Чтобы получить представление ометоды, достаточно абстрактные для обработки общего модального поведения, рассмотрим протокол UIAlertViewDelegate
.Здесь делегат получит сообщение alertViewCancel:
, когда пользователь решит не предпринимать никаких действий, или alertView:didDismissWithButtonIndex:
, когда он выберет один из представленных ему вариантов.
Это хорошее начало для определенияпротокол.
Если вам нужно много контроллеров представления, чтобы реагировать на действия, выполняемые в модальном режиме, скажем, модальный вход в систему, то лучшим механизмом являются уведомления.