Я пишу функцию загрузки для моего текущего приложения для iPhone.
Практически я хочу вернуть пользователя туда, где он остановился. Для этого я хочу воссоздать все ранее появившиеся UIViewController
.
Моя проблема в том, что UIViewController
s не появится, если я просто позвоню [[self navigationController] pushViewController:newController animated:YES];
.
Тот же код отлично работает, когда вызывается как обработчик события, как после нажатия кнопки. Но если я сделаю то же самое без четного (например, в viewDidLoad
), метод loadView
нового контроллера представления не будет вызван.
Мой действительный код (с некоторыми псевдоэлементами):
- (void)viewDidLoad {
[super viewDidLoad];
if (loading)
[self onSomeEvent];
}
- (void)onSomeEvent {
UIViewController *newController = //init....;
[[self navigationController] pushViewController:newController animated:YES];
[newController release];
}
Полагаю, viewDidLoad
- это не то место, где можно сделать такой вызов, но что тогда?