Лучшие 20-пиксельные отступы в UIViewController при программной разметке вида

У меня есть пользовательское представление, которое я добавляю в контроллер представления в 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
 }

У меня странный отступ 20px поверх просмотра. Я хочу, чтобы пользовательское подпредставление начиналось с панели навигации. Я перепробовал несколько вещей, но я не могу заставить отступ 20px. Как мне всегда ограничивать верхнюю часть моего вида под панелью навигации?

1 ответ

Не полагайтесь на safeAreaLayoutGuide в viewDidLoad метод - так как вид еще не выложен там. Если вы делаете это (скажем так) в viewDidLayoutSubviews, вы должны получить действительное значение.

Другие вопросы по тегам