iPhone SDK: переключение просмотров навигационного контроллера - PullRequest
0 голосов
/ 14 сентября 2010

мой первый вопрос, так что будьте осторожны:)

Я пытаюсь использовать навигационный контроллер для переключения видов.Я получил следующее: я получил контроллер MainView, который переключается на другие контроллеры представления, используя этот код:

UIButton *buttonPressed = (UIButton *)sender;

    switch (buttonPressed.tag) {
    case 1:
        viewController = catalogView;
        break;
    case 2: 
        viewController = locatorView;
        break;
    case 3:
        viewController = galleryView;
        break;
}
[[self navigationController] pushViewController:viewController animated:YES];

Теперь я пытаюсь переключиться на другое представление в одном из этих представлений.

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

Например,

- (IBAction)goToProductView {
    //UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Test" message:@"hier" delegate:self cancelButtonTitle:nil otherButtonTitles:@"Ok", nil] autorelease];
    //[alert show];
    viewController = galleryView;
    [[self navigationController] pushViewController:viewController animated:YES];
}

, и я вызываю эту функцию из контроллера представления так:

myViewController *mainView = [[myViewController alloc] init];
[[self navigationController] popViewControllerAnimated:NO];
[mainView goToProductView];

Здесь вызывается функция mainView (предупреждение показывает, если я его цитирую), но представление не меняется.

Кто-нибудь здесь может сказать мне, почему, или имеет лучшее решение?

Заранее спасибо

(ps. Если я пропустил какую-либо информацию, пожалуйста, не стесняйтесь спрашивать, и я предоставлю их как можно скорее)

Ответы [ 2 ]

0 голосов
/ 14 сентября 2010

Я нашел ошибку в моих путях.

Я был вложения Просмотров, как это:

mainView - SecondView ThirdView

и просим mainView перейти от SecondView к ThirdView.

вместо этого:

MainView - SecondView - ThirdView

и теперь просто попросите второй вид перейти к третьему виду.

Для всех, кто достиг здесь с такой же проблемой, я нашел http://www.edumobile.org/iphone/iphone-programming-tutorials/navigationcontroller-application-in-iphone/ чрезвычайно полезным.

0 голосов
/ 14 сентября 2010

Ваш поток вызовов view / view контроллеров не корректен. Если вы можете объяснить правильный сценарий того, что вы хотите, я расскажу вам решение. Или напишите свой код, чтобы лучше понять.

...