我试图将我的UIView定位为导航栏下的20‘t,但是当我将它设置为相对于视图控制器上的视图时,它仍然在导航栏下的20’t,而且我不想硬编码它。
有可能把它定位在导航栏之外吗?
发布于 2014-11-10 07:29:04
尝试添加与TopLayoutGuide的对比,
TopLayoutGuide和self.view的主要区别在于,顶部布局指南从bottom of status bar + bottom of navigation bar(if exist)开始,而self.view总是从iOS 7中的(0,0)坐标开始,用于半透明导航条。
因此,在您的情况下,您应该尝试钉从顶部布局指南。


发布于 2017-09-19 00:33:51
若要以编程方式执行此操作,请使用视图控制器的topLayoutGuide:
override func viewDidLoad() {
...
myView.topAnchor.constraint(equalTo: self.topLayoutGuide.bottomAnchor).isActive=true
...
}发布于 2020-12-01 16:59:36
从iOS 11.0以编程方式使用view.safeAreaLayoutGuide
override func viewDidLoad() {
...
label.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor).isActive=true
}https://stackoverflow.com/questions/26837957
复制相似问题