dismissModalViewController несколько - PullRequest
0 голосов
/ 30 мая 2011

Итак, я использую RootViewController, из которого вы можете отображать сначала категории ViewController, а затем из категорий, которые вы отображаете в следующем примере. Музыка

RootViewController -> Категории -> Музыка

В RootViewController я использую это

[self presentModalViewController:categoriesView animated:NO]; 

, чтобы представить модальное представление и затем отклонить его из Категории с

[self dismissModalViewControllerAnimated:NO];

Из категорий в музыку, которую я использую снова

[self presentModalViewController:fruitView animated:NO]; 

для представления модального представления «Музыка», а затем отклонения его в музыке, как описано выше.

Есть ли возможность отклонить два модальных вида? Мне нужен метод, который ведет от Music обратно к RootViewController, отклоняет оба последних модальных представления.

Есть идеи?

Ответы [ 7 ]

3 голосов
/ 18 октября 2012

Привет Используйте этот следующий код [[[self presentingViewController] presentingViewController] dismissModalViewControllerAnimated:YES];

1 голос
/ 30 мая 2011

Вы уверены, что хотите использовать модальные виды для этого? Похоже, то, что вы пытаетесь сделать, лучше решить с помощью UINavigationController, где вы можете помещать и извлекать контроллеры в стеке (и есть сообщение popToRootViewControllerAnimated:, которое вы можете использовать).

Вот как идиоматически обрабатывается навигация по иерархии в iOS (например, в приложениях iPod, Notes, Контакты, Видео, Фото).

Я думаю, в Xcode есть пример кода для этого.

0 голосов
/ 08 ноября 2011

Use This, В музыкальном представлении напишите это для dismiss 2 view.

[RootViewController dismissModalViewControllerAnimated:YES];

Здесь RootViewController является объектом RootViewController. Надеюсь, это поможет вам.

0 голосов
/ 01 июня 2011

Я использую хороший метод утилиты, чтобы сделать это ... см. Здесь:

Как отменить два или более dismissModalViewController?

0 голосов
/ 30 мая 2011

То, о чем вы здесь говорите, переходя от более общих к более конкретным представлениям, лучше обрабатывается с помощью UINavigationController представлений push и popping. Это виды, которые скользят влево и вправо на экране. Нажатие означает, что оно скользит справа (и показывает новый, более конкретный вид). Popping скользит вправо и показывает более общий вид.

Контроллер модального вида - это тот, который скользит внизу экрана. Посмотрите на приложение iPod на вашем устройстве, как справиться с этим.

0 голосов
/ 30 мая 2011

Использование popToRootViewControllerAnimated метод UINavigationController.

[self.navigationController popToRootViewControllerAnimated:YES];
0 голосов
/ 30 мая 2011

UINavigationController имеет метод popToRootViewControllerAnimated:, который согласно документации:

Выдает все контроллеры вида на стек, кроме корневого контроллера представления и обновляет дисплей.

...