这完全是一个横向模式的应用程序。
我有一个 XIB:
- 尺寸:视网膜4英寸全面屏
- 方向:景观
- 状态栏:默认
- 顶栏:不透明的导航栏
- 自动布局:启用。
Interface Builder 中的视图显示:
- 原点.y = 64px
- 高度 = 256 像素
好吧,我知道状态栏是 20px,所以这意味着 IB 认为横向模式下的导航栏是 44px。
当我运行带有一些日志记录的应用程序时,我得到以下信息:
- navbar.origin.y = 20(状态栏的大小)
- 导航栏.size.height = 32
- view.size.height = 256
所以加起来,308,缺少 12 个像素。
果然,我的 UI 都没有到达任何视图的底部。每个视图设置的底部都有 12 个像素,类似于上面。
我追查到 IB 认为导航栏在横向模式下是 44 像素,即使它应该是 32 像素。这解释了 12px 的差异。因此,IB 正在计算错误的视图高度。
任何帮助表示赞赏,这自 IOS7.1 和 XCode5.1 以来一直困扰着我们。应用程序之前运行良好。