Использование View Controller из раскадровки программно в контроллере просмотра страниц
У меня есть приложение с раскадровкой. Я использую несколько View Controller с segues для выбора из табличного представления в зависимости от выбранного элемента. Я хочу иметь контроллер просмотра страниц, в котором страницы будут одним или несколькими контроллерами представления из раскадровки, даже повторяя их. я пытаюсьinit
Контроллер просмотра страницы выглядит так: .... self.dataSource = self;
UIViewController *initialViewController =[self viewControllerAtIndex:current];
NSArray *viewControllers = [NSArray arrayWithObject:initialViewController];
[self setViewControllers:viewControllers direction:UIPageViewControllerNavigationOrientationHorizontal animated:NO completion:nil];
....
- (UIViewController *)viewControllerAtIndex:(NSUInteger)index
{
if ((descriptions.count == 0) ||
(index >= descriptions.count)) {
return nil;
}
current=index;
// Create a new view controller and pass suitable data.
NSString *language = [[NSLocale preferredLanguages] objectAtIndex:0];
Description *description=[DBCompany getDescriptionById:language descriptionId:[[descriptions objectAtIndex:index] integerValue]];
UIViewController *viewController=nil;
if(description.frame==100){
viewController=[[Company100ViewController alloc] init];
((Company100ViewController*)viewController).companyId = companyId;
}
return viewController;
}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
if ((descriptions.count == 0) ||
(current-1 < 0)) {
return nil;
}
return [self viewControllerAtIndex:current-1];
}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController
{
if ((descriptions.count == 0) ||
(current >= descriptions.count)) {
return nil;
}
return [self viewControllerAtIndex:current+1];
}
Тем не менееviewcontroller
появляется в черном. Я думаю, потому что я добавляюUIviewcontroller
класс, но не связывая его с любым представлением, XIB, в моем случае с раскадровкой.
Как программно использовать контроллер представления, отличный от раскадровки, для использования в контроллере просмотра страницы?