Ios 使用自动布局将UIView固定在UINavigationBar的正下方
我需要使用自动布局在Ios 使用自动布局将UIView固定在UINavigationBar的正下方,ios,uiview,autolayout,uinavigationbar,Ios,Uiview,Autolayout,Uinavigationbar,我需要使用自动布局在UINavigationBar(由UINavigationController所有)下方固定一个UIView 这里需要技巧的是,ui视图需要是ui应用程序的主ui窗口的子视图 插入的视图需要跟踪导航栏的位置,例如,如果iOS状态栏的高度增加到两倍(例如,在绿色“返回呼叫”场景中),或在横向视图中更改高度 解决方案还需要使用透明的UINavigationBars,其中视图控制器的edgesForExtendedLayout未设置为无。您是否尝试使用topLayoutGuide(
UINavigationBar
(由UINavigationController
所有)下方固定一个UIView
这里需要技巧的是,ui视图
需要是ui应用程序
的主ui窗口
的子视图
插入的视图需要跟踪导航栏的位置,例如,如果iOS状态栏的高度增加到两倍(例如,在绿色“返回呼叫”场景中),或在横向视图中更改高度
解决方案还需要使用透明的
UINavigationBar
s,其中视图控制器的edgesForExtendedLayout
未设置为无。您是否尝试使用topLayoutGuide
(部分布局指南)中所述的topLayoutGuide
您应该能够通过以下方式实现所需的结果,而不必计算导航栏高度:
let views = ["myView": myView, "topLayoutGuide":topLayoutGuide]
let verticalConstraints = NSLayoutConstraint.constraintsWithVisualFormat(
"V:[topLayoutGuide]-[myView(30)]",
options: [],
metrics: nil,
views: views)
你知道如何做到这一点吗?我从来没有找到一个我完全满意的解决方案,它没有对导航栏的当前高度做出假设。