Objective-C Present View Controller с его навигационным контроллером - PullRequest
0 голосов
/ 24 октября 2018

У меня есть контроллер вида, как на изображении ниже:

enter image description here

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

LHPDFFile *vc = [[LHPDFFile alloc] init];

vc.previewItemURL = self->_previewItemURL;

UINavigationController *navBar=[[UINavigationController alloc]initWithRootViewController:vc];

[self presentViewController:navBar animated:YES completion:nil];

Это работает, однако мои кнопки не отображаются: (

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

Ответы [ 2 ]

0 голосов
/ 24 октября 2018

Попробуйте создать экземпляр вашего контроллера представления с раскадровкой.Примерно так:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"YourStoryboardName" bundle:nil];
LHPDFFile *vc = (LHPDFFile *)[storyboard instantiateViewControllerWithIdentifier:@"<id of your view controller in the storyboard>"];

Вызов пустого метода init приводит к пустой реализации экземпляра представления, потому что вы никогда не упоминали, что он должен использовать контроллер представления этого раскадровки.Подробнее здесь .

0 голосов
/ 24 октября 2018

Вы init ни один из ваших контроллеров с раскадровки!Эти кнопки принадлежат file контроллеру вида.Вы должны init этот контроллер из раскадровки вместо вызова init.

MyViewController *vc = [[self storyboard] instantiateViewControllerWithIdentifier: @"MyViewControllerStoryBoardID"];

UINavigationController *navBar = [[UINavigationController alloc]initWithRootViewController:vc];

[self presentViewController:navBar animated:YES completion:nil];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...