【发布时间】:2016-12-05 01:13:41
【问题描述】:
我已将MKMapView 添加为视图控制器的view 的子视图(嵌入在导航控制器中。然后我使用锚点将其固定到视图的两侧,如下所示:
mapView.leadingAnchor.constraintEqualToAnchor(view.leadingAnchor).active = true
mapView.trailingAnchor.constraintEqualToAnchor(view.trailingAnchor).active = true
mapView.topAnchor.constraintEqualToAnchor(view.topAnchor).active = true
mapView.bottomAnchor.constraintEqualToAnchor(view.bottomAnchor).active = true
当我使用navigationController?.setNavigationBarHidden(true, animated: true) 隐藏我的导航栏时,mapView 变得更高,好像它不是锚定在我的view 的顶部,而是在我的导航栏的底部。我怎样才能避免这种情况?我希望导航栏滑出屏幕,留下具有相同位置/高度的全屏 mapView。
谢谢!
【问题讨论】:
-
试试这个:mapView.topAnchor.constraintEqualToAnchor(view.topLayoutGuide).active = true
-
"UIView 没有名为 topLayoutGuide 的成员" :(
-
mapView.topAnchor.constraintEqualToAnchor(topLayoutGuide.bottomAnchor).active = true
-
它可以编译,但我达到了和以前一样的效果
-
确保在 Attributes Inspector 中为
view选择了 Extend Edges Under Top Bars。
标签: ios uiviewcontroller autolayout