Ios UIPageViewController,实例化具有脚本ID的ViewController,Objective-C
我正在尝试实现UIPageViewController,我相信我已经到了最后阶段。起初,UIPageViewController只使用一个VC滚动到不同的页面。现在我想让它在不同的ViewController之间滚动。 这是我正在使用的代码:Ios UIPageViewController,实例化具有脚本ID的ViewController,Objective-C,ios,objective-c,iphone,uipageviewcontroller,uipagecontrol,Ios,Objective C,Iphone,Uipageviewcontroller,Uipagecontrol,我正在尝试实现UIPageViewController,我相信我已经到了最后阶段。起初,UIPageViewController只使用一个VC滚动到不同的页面。现在我想让它在不同的ViewController之间滚动。 这是我正在使用的代码: - (void)viewDidLoad { [super viewDidLoad]; self.vcIdentifiers = @[@"PageContentViewController", @"PageContentViewContro
- (void)viewDidLoad {
[super viewDidLoad];
self.vcIdentifiers = @[@"PageContentViewController", @"PageContentViewController1"];
// Create page view controller
self.pageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageViewController"];
self.pageViewController.dataSource = self;
UIViewController *startingViewController = [self viewControllerAtIndex:0];
NSArray *viewControllers = @[startingViewController];
[self.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil];
self.pageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height - 30);
[self addChildViewController:_pageViewController];
[self.view addSubview:_pageViewController.view];
[self.pageViewController didMoveToParentViewController:self];
}
- (PageContentViewController *)viewControllerAtIndex:(NSUInteger)index
{
if (([self.vcIdentifiers count] == 0) || (index >= self.vcIdentifiers.count)) {
return nil;
}
// Create a new view controller and pass suitable data.
PageContentViewController *pageContentViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageContentViewController"];
pageContentViewController.titleText = self.pageTitles[index];
pageContentViewController.pageIndex = index;
return pageContentViewController;
}
我相信它在viewControllerAtIndex中,我需要做一些更改。我想这样做:
PageContentViewController *pageContentViewController = [self.storyboard instantiateViewControllerWithIdentifier:self.vcIdentifiers[index]];
但是它仍然会初始化PageContentViewController。所以我的问题是我不知道如何初始化不同的ViewController。每个索引应该是不同类型的UIViewController?它们都是用你的故事板制作的吗?没错。是的,它们是在故事板中构建和提供的。我还制作了一个数组,如您在viewDidLoad中看到的Identifiers@Asaf的数组