2013-02-22 4 views
0

Мое первое приложение - довольно раскадровка тяжелая (так как она использует кнопки раскадровки, чтобы нажать на новые контроллеры представлений).Раскадровки, XIB и толкатели

Я просто добавил контроллер tableviewcontroller, который толкает (программно) на один из моих контроллеров представления раскадровки.

В результате, любой элемент, который не добавляется в файл реализации отсутствует, когда я делаю:

[self.navigationController pushViewController:[[secondViewController alloc] 
    initWithNibName:nil bundle:nil] animated:YES]; 

Вместо перетаскивания SEGUE стрелки.

Есть ли способ обеспечить загрузку объектов раскадровки, даже если толчок не идет из раскадровки?

ответ

0

Вместо того, чтобы нажимать контроллер вида, вы могли бы рассмотреть возможность выполнения segue программно. Вы можете сделать это, позвонив по номеру [self performSegueWithIdentifier:@"Segue Identifier" sender:self]. Теперь ваш segue выполняется так же, как если бы он был из раскадровки, но с другим отправителем. Вы можете, конечно, установить этот отправитель, чтобы быть тем, что вы хотите или нуждаетесь в нем.

+0

Удивительный! Как вы определяете, какой контроллер просмотра выполняет segue нажатием? – darkginger

+0

Чтобы это сработало, вам нужен segue в вашем раскадровке. Это может быть очень «общий», от одного контроллера представлений (не только определенного вида в этом контроллере представления, но и самого контроллера представления) до другого. Если это не вариант, я не уверен, что вы просите. –

+0

Это сработало !!! Спасибо Скотту. Я не видел, чтобы вы могли пометить раскладку segue идентификатором. – darkginger