0

Я использую UIPageViewController для двух контроллеров представлений. В первом контроллере просмотра у меня есть кнопка «СЛЕДУЮЩАЯ», чтобы перейти ко второму контроллеру представления. Мой вопрос: как я могу подключить его?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

уверен, можете пролистнуть и использовать кнопку next в первом 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, которым вы управляете).

 Смежные вопросы

  • Нет связанных вопросов^_^