2011-11-16 83 views
2

我有一個UINavigationController介紹了幾個UIViewControllers。然後我想切換到UISplitviewController從UINavigationController切換到UISplitviewController

所以我在我的應用程序委託中實現了一個方法useSplitViewController,我從最後的UIViewController調用。它顯示了SplitView,但我無法旋轉我的設備。我的SplitviewController裏面的ViewController沒有得到旋轉事件。我的錯誤是什麼?如何解決?

-(void)useSplitViewController{ 

    [self.menuViewController.view removeFromSuperview]; 
    self.menuViewController = nil; 
    self.navcon = nil; 

    self.splitViewController =[[UISplitViewController alloc]init]; 
    self.rootViewController=[[RootViewController alloc]init]; 
    self.detailViewController=[[[FirstDetailViewController alloc]init] autorelease]; 

    UINavigationController *rootNav=[[UINavigationController alloc]initWithRootViewController:rootViewController]; 
    UINavigationController *detailNav=[[UINavigationController alloc]initWithRootViewController:detailViewController]; 


    self.splitViewController.viewControllers=[NSArray arrayWithObjects:rootNav,detailNav,nil]; 
    self.splitViewController.delegate=self.detailViewController; 

    // Add the split view controller's view to the window and display. 
    [window addSubview:self.splitViewController.view]; 
    [window makeKeyAndVisible]; 
} 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  


    self.navcon = [[UINavigationController alloc] init]; 
    self.menuViewController = [[MenuViewController alloc] init]; 
    self.menuViewController.appDelegate = self; 
    [self.navcon pushViewController:self.menuViewController animated:NO]; 


    [window addSubview:self.menuViewController.view]; 
    [window makeKeyAndVisible]; 

    //[self useSplitViewController]; 

    return YES; 
} 

回答

1

您需要設置窗口的根視圖控制器:

更換

[window addSubview:self.splitViewController.view]; 

用,

[window setRootViewController:self.splitViewController]; 
+0

非常感謝你。我必須對UINavigationViewController進行相同的處理,而不是它的工作原理! – netshark1000

相關問題