以编程方式布局视图时 UIViewController 中的前 20px 填充
Posted
技术标签:
【中文标题】以编程方式布局视图时 UIViewController 中的前 20px 填充【英文标题】:Top 20px padding in UIViewController when laying out view programatically 【发布时间】:2018-12-24 08:43:03 【问题描述】:我有一个自定义视图,我要在 viewDidLoad() 中添加到视图控制器 -
var customView : CustomView = CustomView()
override func viewDidLoad()
super.viewDidLoad()
self.view.addSubView(customView)
customView.topAnchor.constraint(equalTo : view.safeAreaLayoutGuide.topAnchor).isActive = true //Tried this but nothing happens
我在视图顶部有一个奇怪的 20 像素填充。我希望自定义子视图从导航栏下方开始。我尝试了多种方法,但无法让 20px 顶部填充消失。如何始终将视图的顶部限制在导航栏下方?
【问题讨论】:
【参考方案1】:不要依赖viewDidLoad
方法中的safeAreaLayoutGuide
- 因为视图尚未在其中布局。如果你在viewDidLayoutSubviews
中这样做(比方说),你应该得到有效值。
【讨论】:
以上是关于以编程方式布局视图时 UIViewController 中的前 20px 填充的主要内容,如果未能解决你的问题,请参考以下文章