我是iOS新手,
One simple case of my trouble is:
如何放置UILabel(或任何UIViews)只是在导航栏和状态栏下面?布局预计是动态的(假设这些视图始终紧跟导航栏,无论导航栏或状态栏的高度如何变化),如下所示:
已经考虑过一些情况:
-
我知道在
UIViewController
中使用automaticallyAdjustsScrollViewInsets
可以自动布局滚动视图 . 但是这里的情况不允许使用scrollview . -
状态栏's height can be a constant value of 1579962 in most iOS device, and the default navigation bar'的高度可以是"44"同样的方式 . 区别在于我可以使用
[[UIApplication sharedApplication] statusBarFrame
在代码中的任何位置动态获取状态栏的高度,虽然导航栏的高度可以用相同的"get frame"方式引用,我的大多数情况是在导航栏添加到超级之前获得高度查看,所以我总是从它的框架得到0高度 . -
虽然在大多数情况下,状态栏和导航栏的总高度可以定义为值“64”,但由于更多新设备可能会更改此值,因此它不是未来考虑的永恒方式 .