为什么我的UITabBar在纵向加载时会向下移动20像素?

时间:2011-02-14 21:04:56

标签: cocoa-touch ios uinavigationcontroller uitabbarcontroller uitabbar

我在UITabBarController内加载UINavigationController。默认情况下,UITabBar的{​​{1}}会将其置于视图的底部。通过使用默认选项,当在横向上启动应用程序时,栏会在底部位置正确显示。

enter image description here

这也可以在底部正确显示肖像(但仅在横向模式下启动应用程序时)。 enter image description here

如果我在肖像上启动应用程序,它似乎会向下移动两个横向上状态栏的高度: enter image description here

和肖像: enter image description here

我试图获得与CNBC应用程序类似的效果,并在视图顶部显示UITabBarController。在审核Mihai Damian's question后,我尝试自定义UITabBar。

我只是添加了几行代码:

UITabBar

当我尝试修改UITabBar的框架时,它会在横向模式下消失: enter image description here

分别在风景和肖像中再次启动时,在肖像上出现在不同的高度。

以横向模式启动: enter image description here

以纵向模式启动: enter image description here

以前有人遇到过这个问题吗?如果是这样,你是怎么解决它的?非常感谢任何帮助。

在纵向模式下加载视图时似乎只添加状态栏的20个像素,好像它没有找到状态栏,即使它在那里,因此,它在已经添加了20个像素状态栏现有20个像素。

1 个答案:

答案 0 :(得分:2)

我实际上通过IB解决了这个问题。由于某种原因,视图控制器想要添加状态栏,您只需在IB上将其设置为无,并选中调整大小视图以使其适合。另外,请确保视图的尺寸设置为768 x 1024。