2011-08-31 195 views
1

我的分割视图包含每个tabbaritem(Detailview)上的UITable(Masterview)和带有navigationcontroller的tabbar。我想要的是,当我点击Masterview中的tablerow时,它会在详细视图控制器中推送一个新视图。将视图控制器从根到视图控制器(SplitView)

我写了这个迭代来获得正确的UINavigationController并推送新的视图。不幸的是,这是行不通的。它没有显示新的观点,有时它只是坠毁。

// code from MasterView 
    PDFViewer *pdfViewerController = [[PDFViewer alloc] initWithNibName:@"PDFViewer" bundle:nil]; 
    pdfViewerController.pdfData = [[NSData alloc] initWithData: pdfContent]; 
    pdfViewerController.docInfo = curDocInfo; 

    // gets tabbar controllers 
    XtendisAppDelegate *appDelegate = (XtendisAppDelegate *)[[UIApplication sharedApplication] delegate]; 
    NSMutableArray *controllers = [NSMutableArray arrayWithArray: appDelegate.tabBarController.viewControllers]; 

    for (UIViewController *curController in controllers) { 
     if ([curController isKindOfClass:[UINavigationController class]]) { 
      [curController.navigationController pushViewController:pdfViewerController animated:YES]; 
      break; 
     } 
    } 

    [pdfViewerController release]; 

任何想法我做错了什么? 任何帮助表示赞赏。提前致谢。

干杯, Inoel

+0

对象是'UINavigationController'that你会发现不在视图顶部ollers堆栈? – Nekto

回答

1

尝试更换

[curController.navigationController pushViewController:pdfViewerController animated:YES]; 

与此:

[curController pushViewController:pdfViewerController animated:YES]; 

因为curController已经是UINavigationController class

+0

当然... ...扼杀我,感谢指出。 – Inoel

相关问题