0

我想創建一個容器視圖控制器(見截圖),我想在右側添加一個導航控制器,但我遇到了一些問題。你可以幫我嗎?如何在iOS5中將導航控制器添加到我自己的容器視圖控制器中?

當我在父控制器(viewDidLoad中)添加此代碼,我看到與其它位置/大小的觀點,我想,因爲我不能訪問導航控制器容器圖。

嘗試:

[self addChildViewController:_detailNavigationController]; 
_detailNavigationController.view.frame = CGRectMake(256, 49, 768, 651); 
[self.view addSubview:_detailNavigationController.view]; 

而且也是這一點,但只有第一種觀點的作品,顯然。

[self addChildViewController:_detailNavigationController]; 
_detailNavigationController.topViewController.view.frame = CGRectMake(256, 49, 768, 651); 
[self.view addSubview:_detailNavigationController..topViewController.view]; 

嘗試了黑客獲得導航控制器容器視圖,但不工作,我在屏幕上看到什麼,用我認識的觀點是零調試器。除此之外,蘋果可能不喜歡這個。

[self addChildViewController:_detailNavigationController]; 
UIView *view = [_detailNavigationController valueForKey:@"_containerView"]; 
view.frame = CGRectMake(256, 49, 768, 651); 
[self.view addSubview:view]; 

我錯過了什麼嗎?
您是否知道我可以在自己的自定義容器視圖控制器中添加導航控制器?
在此先感謝!

截圖: http://img803.imageshack.us/img803/2464/screennjz.png

回答

1

我有自定義類MasterViewController和DetailedViewController是的UITableViewController的子類。 NavigationController是UINavigationController的子類,SplitViewController是UISplitViewController的子類。

正如你可以看到它的工作原理,但我有一個問題,當我從彈出導航控制器的視圖。如果你發現如何解決這個問題,讓我知道。

enter image description here

MasterViewController *master = [[MasterViewController alloc] init]; 

    NavigationController *masterNav = [[NavigationController alloc] initWithRootViewController:master]; 

    DetailedViewController *detailed = [[DetailedViewController alloc] init]; 

    NavigationController *detailedNav = [[NavigationController alloc] initWithRootViewController:detailed]; 

    myVC = [[SplitViewController alloc] init]; 

    [myVC setViewControllers:[NSArray arrayWithObjects:masterNav, detailedNav, nil]]; 
+0

我遇到的問題是,因爲不是所有的我用VC都是風景所以它翻出來。 – 2013-03-15 15:02:42

+0

@Ricardo做了這個幫助? – 2013-03-23 14:46:08

相關問題