Как перейти между контроллерами представления - PullRequest
0 голосов
/ 03 октября 2009

Я поместил код в мой делегат приложений так, чтобы я мог переходить с одного контроллера представления на другой.

Однако, когда я нажимаю кнопку, переход на мой SecondViewController не производится. Как мне это сделать? любой простой способ вывести контроллер следующего представления, (контроллер pushview) ...

Вот мой код:

SecondViewController *aSecondView = [[SecondViewController alloc] init];
[self setSecondViewController:aSecondView];
[aSecondView release];

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:2.0];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft 
                       forView:window
                         cache:YES];
[viewController.view removeFromSuperview];
[self.window addSubview:[secondViewController view]];
[UIView commitAnimations];

Ответы [ 2 ]

1 голос
/ 05 октября 2009

Хотя вы не опубликовали больше своего кода, поэтому я не уверен, что от переходов контроллера внутри делегата приложения возникает запах кода. Поскольку вы описываете кнопку, которая инициирует переход, мой вопрос заключается в том, почему вы не используете контроллер навигации и / или не представляете свой второй контроллер вида модально внутри контроллера представления, которому принадлежит кнопка?

Правильно измените делегирование приложения - я в основном использую свой только для выполнения разовых глобальных задач, таких как загрузка базы данных хранилища данных / sqlite и т. Д.

1 голос
/ 04 октября 2009

Ну, поскольку вы не используете встроенные функции для представления контроллеров представления, вам придется вызвать все функции view*Appear::

  • -viewWillAppear:
  • -viewDidAppear:
  • -viewWillDisappear:
  • -viewDidDisappear:

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

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