2015-10-16 27 views
0

我有一個pageViewController,它將不同的圖像帶到每次滑動的屏幕上。分頁工作與手勢很好。但是,我試圖實現一個按鈕,也做分頁。我在左上角有一個叫做「Back」的按鈕,右上角是一個名爲「Next」的按鈕。我無法使這些按鈕工作。使用按鈕移動pageViewController(objective-c)

注:OnboardingChildViewController是LoginSignUpController

的孩子控制器

代碼
LoginSignUpViewController.m:

#pragma mark - Paging delegate 

- (OnboardingChildViewController *)viewControllerAtIndex:(NSUInteger)index { 

    OnboardingChildViewController *childViewController = [[OnboardingChildViewController alloc] initWithNibName:@"OnboardingChildViewController" bundle:nil]; 
    childViewController.index = index; 
    return childViewController; 

} 

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController { 

    NSUInteger index = [(OnboardingChildViewController *)viewController index]; 

    if (index == 0) { 
     return nil; 
    } 

    // Decrease the index by 1 to return 
    index--; 

    return [self viewControllerAtIndex:index]; 

} 

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController { 

    NSUInteger index = [(OnboardingChildViewController *)viewController index]; 

    index++; 

    if (index == 5) { 
     return nil; 
    } 

    return [self viewControllerAtIndex:index]; 

} 

- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController { 
// The number of items reflected in the page indicator. 
return 5; 
} 

- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController { 
// The selected item reflected in the page indicator. 
return 0; 
} 

OnboardingChildViewController.m:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    self.view.backgroundColor = [UIColor clearColor]; 

    switch(self.index) 
    { 
    case 0: { 
     self.dismissButton.hidden = true; 
     self.onboardingImage.image = nil; 
     [self.nextButton setTitle:@"Take a Tour" forState:UIControlStateNormal]; 
     self.onboardingDescription.hidden = true; 
     self.index = 0; 
     break; 
    } 
    case 1: { 
     self.dismissButton.hidden = false; 
     self.onboardingImage.image = [UIImage imageNamed: @"onboardingImage1.png"]; 
     self.onboardingDescription.text = @"Follow users to see their content in your feed"; 
     self.index = 1; 
     break; 
    } 
    case 2: { 
     self.dismissButton.hidden = false; 
     self.onboardingImage.image = [UIImage imageNamed: @"onboardingImage2.png"]; 
     self.onboardingDescription.text = @"Listen to Stations based on your interest"; 
     self.index = 2; 
     break; 
    } 
    case 3: { 
     self.dismissButton.hidden = false; 
     self.onboardingImage.image = [UIImage imageNamed: @"onboardingImage3.png"]; 
     self.onboardingDescription.text = @"Easily Search for Users, Posts, and Stations"; 
     self.index = 3; 
     break; 
    } 
    default: { 
     self.dismissButton.hidden = false; 
     self.onboardingImage.image = [UIImage imageNamed: @"onboardingImage4.png"]; 
     [self.nextButton setTitle:@"Sign Up" forState:UIControlStateNormal]; 
     self.onboardingDescription.text = @"Post Photos, Videos, Audio, and Live Video to Stations"; 
     self.index = 4; 
     break; 
    } 
} 

} 


- (IBAction)backButton:(id)sender { 
    //NEED TO MOVE PAGEVIEWCONTROLLER BACK.... self.index--? 


} 
- (IBAction)nextButton:(id)sender { 
    //NEED TO MOVE PAGEVIEWCONTROLLER FORWARD.... self.index++? 
} 

回答