0

我對兩個視圖控制器使用UIPageViewController。在第一個視圖控制器中,我有一個'NEXT'按鈕來轉到第二個視圖控制器。我的問題是:我如何連接它?帶按鈕的UIPageViewController到下一個視圖

在我的第一個和第二個視圖控制器中,我還沒有代碼。然而,在我的RootViewController我有這樣的代碼:

- (void)viewDidLoad { 
    self.pageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageViewController2"]; 
    self.pageViewController.dataSource = self; 
    SeekerRegistrasiViewController *tvc = [self.storyboard instantiateViewControllerWithIdentifier:@"seeker1"]; 
    Seeker2RegistrasiViewController *pvc; 
    self.array =[NSArray arrayWithObjects:tvc, pvc, nil]; 
    [self.pageViewController setViewControllers:self.array direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:nil]; 
    self.pageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height -60); 
    self.pageViewController.view.backgroundColor = [UIColor clearColor]; 
    [self addChildViewController:pageViewController]; 
    [self.view addSubview:pageViewController.view]; 
    [self.pageViewController didMoveToParentViewController:self]; 
} 

-(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController{ 
    if ([viewController isKindOfClass:[Seeker2RegistrasiViewController class]]) { 
     SeekerRegistrasiViewController *pvc = [self.storyboard instantiateViewControllerWithIdentifier:@"seeker1"]; 
     return pvc; 
    } 
    else return nil; 
} 



-(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController{ 
    if ([viewController isKindOfClass:[SeekerRegistrasiViewController class]]) { 
     Seeker2RegistrasiViewController *tvc = [self.storyboard instantiateViewControllerWithIdentifier:@"seeker2"]; 
     return tvc; 
    } 
    else return nil; 
} 

- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController { 
    return 2; 
} 

- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController { 
    return 0; 
} 

我將不勝感激任何幫助,將指導我在正確的方向。

+0

你是否也想要UIPageViewcontroller提供的默認滑動控件? –

+0

肯定可以在第一個VC下刷一下就可以使用按鈕。 現在已經可以輕掃,但我真的需要按鈕的工作。 –

+0

其實蘋果不提供這樣的直接API,請參考[this](http://stackoverflow.com/questions/13633059/uipageviewcontroller-how-do-i-correctly-jump-to-a-specific-page-without-messing ) –

回答

0

您可以使用setViewControllers:direction:animated:completion:。 看此答案:Is it possible to Turn page programmatically in UIPageViewController?

你基本上重新設定所有的視圖控制器(已交換),定義一個方向(其動畫將使用例如,UIPageViewControllerNavigationDirectionForward),使用YES用於動畫和用於處理的完成塊之後(如更新您管理的currentPage索引)。

相關問題