2013-10-28 38 views
0

我創建一個使用故事板一UIPageViewControllerUIViewController ,但我最需要的是一個UINavigationController。 有加UINavigationControllerUIPageViewController 否則trasform的方式UIViewControllerUINavigationController添加UINavigationController的成UIPageViewController

這是我的代碼:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.dataSource = self ; 

    [self setViewControllers:@[self.pagina1]direction:UIPageViewControllerNavigationDirectionReverse animated: YES completion:nil ]; 
UIImageView *backgroundImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"carbon.jpg"]]; 

    [self.view addSubview:backgroundImage]; 
    [self.view sendSubviewToBack:backgroundImage]; 
    // [backgroundImage release]; 
} 




- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 


} 


- (ViewControllerPagina1 *) home1 { 

    if(!_home1) 
    { 
     UIStoryboard *storyboard = self.storyboard ; 
     _home1 = [storyboard instantiateViewControllerWithIdentifier:@"Prima pagina"] ; 
    } 

    return _home1 ; 
} 

- (ViewControllerPagina2 *) home2 { 

    if(!_home2) 
    { 
     UIStoryboard *storyboard = self.storyboard ; 
     _home2 = [storyboard instantiateViewControllerWithIdentifier:@"Seconda pagina"] ; 
    } 

    return _home2 ; 
} 

- (ViewControllerPagina3 *) home3 { 

    if(!_home3) 
    { 
     UIStoryboard *storyboard = self.storyboard ; 
     _home3 = [storyboard instantiateViewControllerWithIdentifier:@"Terza pagina"] ; 
    } 

    return _home3 ; 
} 


- (UIViewController *) pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController 
{ 
    UIViewController *nextViewController = nil ; 

      if(viewController == self.home1) nextViewController = self.home2 ; 
    else if(viewController == self.home2) nextViewController = self.home3 ; 
    else if(viewController == self.home3) nextViewController = self.home1 ; 
    return nextViewController ; 

} 

- (UIViewController *) pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController 
{ 
    UIViewController *nextViewController = nil ; 

    if(viewController == self.home1) nextViewController = self.pagina3 ; 
    else if(viewController == self.home2) nextViewController = self.home1 ; 
    else if(viewController == self.home3) nextViewController = self.home2 ; 
    return nextViewController ; 

} 

其實「home3」是UIViewController, 我需要trasfrom它a UINavigationController

任何想法?

回答

0

不知道你在這裏試圖做什麼。但是,如果您需要導航控制器中的視圖控制器,請創建導航控制器,將視圖控制器添加到其視圖控制器陣列,然後將導航控制器(現在包含視圖控制器)添加到頁面控制器。

我不真的使用故事板。我編程創建我的視圖控制器。這很容易做,我相信給你更多的靈活性比故事板。

+0

我需要相反的一個導航滾動到視圖控制器。或者只將導航滾輪放入pageview控制器。 – user2586720

+0

嗯,我還不確定你在做什麼。無論如何,如果沒有意見,導航控制器並不是什麼好事。此外,導航控制器是一個容器對象,不是一個真正的視圖,所以你不能只顯示一個導航控制器沒有任何內部的視圖控制器陣列。 – physics90

相關問題