Как перейти к первому viewController из последнего контроллера View среди нескольких контроллеров view - PullRequest
1 голос
/ 24 июня 2010

Hii ... я новичок в программировании iPhone ... кто-нибудь может мне помочь, пожалуйста ... !! У меня есть несколько viewControllers ... в первом ViewController под названием HomeViewController я вызвал метод [self presentModalViewController: aboutViewController animated: YES]; в IBAction для aboutButton для перехода на AboutViewController и в AboutViewController я вызвал метод [self presentModalViewController: ContactUsViewController animated: YES]; перейти к этому контроллеру представления и еще одному методу [self dismissModalViewControllerAnimated: YES]; чтобы вернуться к HomeViewController.

в третьем, ContactUSViewController я вызвал метод [self dismissModalViewControllerAnimated: YES]; чтобы вернуться к AboutViewController..и я хочу перейти прямо к HomeViewController отсюда (ContactUsViewController) .i использовал [self presentModalViewController: homeViewController: home ДА]; но не работает ...

Как это сделать ...?

Спасибо тебе ..

1 Ответ

3 голосов
/ 24 июня 2010

Согласно doco для dismissModalViewControllerAnimated :

Если вы представите несколько модальных представлений контроллеры подряд, и, таким образом, построить стек модального представления контроллеры, вызывающие этот метод на посмотреть контроллер ниже в стеке отклоняет свое непосредственное детское представление контроллер и все контроллеры представления выше этого ребенка в стеке. когда это происходит, только самый верхний вид уволен в оживленном порядке; любые промежуточные контроллеры вида просто удаляется из стека.

Итак, из вашего ContactUsViewController вам нужно вызвать dismissViewControllerAnimated на HomeViewController . Вы можете получить доступ к этому контроллеру представления через свойство parentViewController . Итак, ваш код в dismissAction для ContactUsViewController :

- (IBAction)dismissAction:(id)sender
{
    // get your parent (ie AboutViewController)
    UIViewController * parent = self.parentViewController;

    // get its parent (ie HomeViewController)
    [parent.parentViewController dismissModalViewControllerAnimated:YES];
}

Возможно, есть лучший способ добраться до вашего HomeViewController , но для вашего мелкого стека контроллеров представления это должно быть хорошо (я попробовал это, и это сработало).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...