我注意到我的iPhone应用程序在iOS7版本和之前的iOS版本之间的行为并不相同。当然有明显的区别(样式),但我在谈论编码逻辑,这取决于状态栏是否可见。
在以前的版本中,当我计算高度和垂直位置时(出于各种布局/位置目的),我必须考虑状态栏(高度为20“像素”)。例如,由于我的应用程序显示状态,我不得不考虑20个像素(因为0位置不是屏幕的顶部,而是第21个像素位置(位于状态栏下方)。
但是现在,在iOS7中,似乎不再是这种情况(Y位置为0是状态栏的顶部)。
我希望我能清楚地解释这一点。我希望有人能指导我更好地理解这里发生的事情。
答案 0 :(得分:0)
在iOS的早期版本中,除了颜色之外,我们在状态栏中的变化不大,并且在视图层次结构中为状态栏保留了20个点空间。在iOS7中,状态栏变为透明,您现在可以使用20个点。
但是如果你使用导航控制器,你不必担心这个问题。 当存在UINavigationController时,UINavigationBar将自动放置在状态栏下方。在这种情况下,状态栏的外观将完全取决于其下方的导航栏,如果您想更改状态栏中的任何内容,您还必须在导航栏中进行更改。