Переключение XIB в iPhone SDK? - PullRequest
       24

Переключение XIB в iPhone SDK?

0 голосов
/ 07 апреля 2010

У меня проблемы с переключением XIB, когда я пытаюсь перейти со второго вида на третий.

Я получаю второй вид с первого, как это ...

-(IBAction)startButtonClicked:(id)sender{

    Number2ViewController *screen = [[Number2ViewController alloc] initWithNibName:nil bundle:nil];
    screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:screen animated:YES];
    [screen release];

    }

Но когда я во втором представлении пытаюсь добраться до третьего представления, приложение вылетает ...

-(IBAction)nextButtonClicked:(id)sender{

    Number3ViewController *screen = [[Number3ViewController alloc] initWithNibName:nil bundle:nil];
    screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:screen animated:YES];
    [screen release];

    }

Я знаю, как перейти к одному представлению, а затем сразу же вернуться назад, используя

[self dismissModalViewControllerAnimated:YES];

Как вы просто продолжаете переходить к другим взглядам, хотя без необходимости возвращаться сначала?

Ответы [ 2 ]

4 голосов
/ 07 апреля 2010

Исходя из того, что вы написали, вам, вероятно, намного лучше использовать UINavigationController для этого. Он специально разработан, чтобы иметь возможность вставлять новые контроллеры и управлять уведомлениями, когда эти контроллеры меняются (например, добавляется новый или удаляется текущий). presentModalViewController: действительно разработан для случаев, когда вы хотите представить новый вид, который охватывает все приложение, выполняет одну функцию и уходит. Примерами этого могут быть отправка электронного письма из вашего приложения, просмотр внешней веб-страницы, фотографирование, представление текста, изменение настроек или другие подобные вещи. Он не предназначен для управления стеком контроллеров представления, которые фактически взаимодействуют друг с другом.

0 голосов
/ 07 апреля 2010

Вы должны взглянуть на UINavigationController

...