2012-01-05 2 views
0

Я красную почти всю предоставляемую помощь, и я все еще смущен. У меня есть простой проект в Xcode4.2 с сотовой машиной. Там у меня есть Navigationcontroller и два Viewcontroler (один, два). Если я пытаюсь получить от одного до двух с pushViewController, это сломается. Где моя проблема. Если у меня есть навигационный контроллер в моем раскадровке, у меня не должно быть проблем с доступом к нему и его использованием, правильно? Я не получил модальное оконное приложение, я использую нечто вроде панели рассказов, где пользователь может вернуться назад и вперед, не потеряв данные управления. Как я должен делать это правильно.UINavigationcontroller pushViewController не работает, чтобы получить следующий Viewcontroller

спасибо за любую помощь я новичок в яблоке развивается :)

Единственный код:

- (IBAction)Next:(id)sender{ 
    two* myNext = [[two alloc] initWithNibName:@"two" bundle:nil]; 
    NSLog(@"%@", [self navigationController]); 
    NSLog(@"%d", [[[self navigationController] viewControllers] count]); 
    [[self navigationController] pushViewController:myNext animated:YES]; 
// [[self navigationController] pushViewController:myNext animated:YES]; 
// [myNext release]; 
} 
+0

Что имеется в журналах, которые вы зарегистрировали? – rishi

+0

Хорошо, я понял это :). Решение в главном вопросе. – kubo

+0

Вы должны добавить решение в качестве ответа, а затем принять его так, чтобы он не навсегда появлялся в качестве неотвеченного вопроса. – Caleb

ответ

1

Решение изменить инициализации UIViewController из-за использования раскадровки вы не можете использовать initWithNibName , Вы должны использовать instantiateViewControllerWithIdentifier, которые используют свойство идентификатора UIViewController. Свойство идентификатора может быть установлено в sotryboard.

ViewController* myNext = [self.storyboard instantiateViewControllerWithIdentifier:@"Next"]; 
Смежные вопросы