2011-02-06 77 views
0

我正在做一个基于导航的应用程序。我的rootview是一个UITableView,从那里我导航到UIView。出于某种原因,UIView的高度似乎比它应该大,这意味着视图的底部不显示。UIView底部不显示

我做的按钮显示在视图中使用一个按钮一个UITextView底部一个非常简单的测试,只有上半部分,当我在模拟器上运行它,即使在高度设置为460

下面是我用导航代码:

TestViewController *t = [[TestViewController alloc] initWithNibName:nil bundle:nil]; 
[self.navigationController pushViewController:t animated:YES]; 

在我的测试中的.xib在IB只是做拖动一个TextView和一个按钮的UIView。

我在导航到另一个UITableView时没有相同的问题。

我错过了什么?

+0

实在是不是在你回答的问题,它足够的信息。 – Max 2011-02-06 11:18:54

+0

我意识到信息的数量是稀缺的,但是,真的没有多少更多。我已经把它分解成最低限度的代码来试图找出问题,但没有运气。请告知我您需要帮助的其他信息,谢谢。 – 2011-02-06 11:25:37

回答

2

请确保您有那些在IB

view.autoresizingMask = UIViewAutoresizingFlexibleHeight; 
textView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleBottomMargin; 
button.autoresizingMask = UIViewAutoresizingFlexibleTopMargin; 

这意味着viewControllers'视图获取由navigationController调整,TextView的获取由主视图,然后从顶部的距离调整保持不变为在你的笔尖,最后从视图底部到你的按钮的距离保持不变。

如果您不知道如何在IB用户界面中翻译这些值,则箭头正在调整大小,“I”与该侧的距离固定 - 左侧,顶部,右侧,底部。

视图的导航基于应用程序的高度应为480 - statusbarHeight(= 20) - navigationBarHeight(= 44)= 416像素