调整viewControllers视图的大小,该视图是IPhone上UINavigationController的一部分

时间:2009-08-19 18:16:38

标签: iphone uinavigationcontroller uitabbar

我正在使用UINavigationController来处理我的应用程序中viewControllers的推送和弹出。这是我有一个标签栏(不使用UITabbarController)的部分,它由同一个UINavigationController管理,我只需将UITabBar添加到导航控制器视图(通过使用addSubview)。

问题: 我有一些UIViewControllers,表格视图被推入导航堆栈,因为我的标签栏是视图的一部分,而不是导航堆栈,因为导航控制器不知道标签栏,因此导航控制器不知道标签栏因为它在它的视图和导航堆栈。没有导航控制器我只会调整ViewControllers视图的大小,它会工作正常,但是当我尝试这样做时,似乎NavigationCOntroller只是忽略了我的框架并设置了自己的框架,因此表格视图被切断了。我找到了一个解决方案,即添加一些额外的单元格并隐藏它们,这种方法很好但是它有点笨拙,任何人都有任何关于如何以不同的非黑客方式解决这个问题的建议?

由于

2 个答案:

答案 0 :(得分:1)

好吧,所以我解决了这个问题。之前我曾尝试调整UITableView而不是viewController,但这不起作用。我只是意识到,这不起作用,因为我使用UITableViewController管理自己的tableView,并没有让我改变它的框架(也许我在错误的地方更改它,尝试在viewDidLoad,我敢打赌,如果我在调用[super viewDidload]之后它会工作......好吧)。所以我将类更改为UIViewController并在那里管理表视图,现在它工作正常,感谢回复。

答案 1 :(得分:0)

尝试使用UITableView为子视图创建一个UIView根视图。然后将UITabBar添加到UIView实例。现在UITableView将不知道UINavigationController。