2010-04-22 2 views
0

У меня есть три контроллера просмотра, давайте назовем их A, B и C.Как предотвратить контроллеров отображения модальных мигает при смене

При нажатии кнопки на вид A, вид B показан с помощью presentModalViewController: анимированные:

Когда кнопка завершения нажата на экране B, она отклоняется. View A уведомляется, после чего он немедленно показывает вид C, снова используя presentModalViewController: анимированный:

Проблема заключается в том, что содержимое A на мгновение вспыхивает на экране между просмотром B и открытием C.

я могу обойти эту проблему путем просмотра пустой и перемещение его текущее содержимое на новый взгляд, Д.

(По разным причинам я не хочу вид B иметь вид C, поэтому это не открывая его)

Я слишком усложняю это? Я уверен, что есть более умный способ пойти?

ThanksT

ответ

1

С видом контроллерами вы имеете дело со стеком контроллеров. A находится поверх стека, вы нажимаете B поверх A, B показывает и радует, когда вы отклоняете B, A показывает снова, пока не будет нажата C. Это создает эффект вспышки. Один из способов, не зная больше вашей архитектуры, - это то, что B нажимает контроллер C, а для B в это время удаляется из стека. Более подробная информация требует дополнительной информации.

Приветствия,

Kenny

+0

Когда я отвечал на вопрос, я отправлял новые представления модально не используя стеки. Причина в том, что я почувствовал, что мое приложение не укладывается в стек, первую очередь, первоклассную парадигму. Вскоре я понял, что я слишком строг в своих мыслях и что могу и должен манипулировать содержимым стека для достижения моих потребностей, например, выскакивать или нажимать несколько просмотров вовремя и т. Д. Это соответствует вашему ответу. Спасибо, что нашли время. –

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