UINavigationController仅限全屏吗?

时间:2011-03-29 13:08:32

标签: iphone ipad uinavigationcontroller

我正在使用基于导航的iPad应用程序模板。我需要一个NavigationController在TableView中显示我的播放列表层次结构。

完成本书。没问题。

Full Screen Navigaton Controller.

现在我希望这个视图只占用屏幕的一部分,所以,在我的AppDelegate中我说:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window.rootViewController = self.navigationController;
    self.window.rootViewController.view.frame = CGRectMake(0,352,384,1024-352);
    [self.window makeKeyAndVisible];
    return YES;
}

这很有效。但是,现在标题栏与TableView的一部分重叠。

Crooked title bar when not fullscreen.

我可以向下移动表格视图,但这会使下一个视图的“弹出”动画看起来有些奇怪,因为动画将返回到重叠版本,然后动画,然后在之后去重叠动画结束了。

我正在寻找一种方法来移动NC的标题栏。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

你不能只设置调整大小rootViewController,因为屏幕将有空白区域! 您可以尝试使用UISplitController或从空视图应用程序模板开始,然后将UIView对象添加到您希望的XIB文件中,并根据需要进行布局,然后将UINavigationController添加到其中一个而不是rootViewController。

答案 1 :(得分:0)

试试这个

self.window.rootViewController.view.frame = CGRectMake(0,0,384,1024-352);