Я делаю опрос iMessage app (да, я знаю) и имею проблему, перемещающуюся между режимами презентации. Серия скриншотов ниже показывает, что при запуске приложения все в порядке в компактном режиме. При разворачивании все еще правильна, но потом, когда я вернусь, чтобы уплотнить содержимое сдвигается вниз, что выглядит такой же высоты, что и большие сообщения навигационной панели (86, я верю)TopAnchor of viewController changin in iMessage Расширение между режимами презентации
Я пробовал установив верхнее ограничение на значение -86 при переключении обратно на компактный вид, однако это либо ничего не делает, либо отправляет обратно туда, где должно быть, а затем вычитает 86, поэтому оно слишком сильно исчезает. Я на основе этого проекта на примере IceCream проекта из приложения, так не уверен, где эта проблема исходит от (вероятно autolayout, но все прижат к направляющим компоновочных)
Вот код, который добавляет контроллер представления:
func loadTheViewController(controller: UIViewController) {
// Remove any existing child controllers.
for child in childViewControllers {
child.willMove(toParentViewController: nil)
child.view.removeFromSuperview()
child.removeFromParentViewController()
}
// Embed the new controller.
addChildViewController(controller)
controller.view.frame = view.bounds
controller.view.translatesAutoresizingMaskIntoConstraints = true
view.addSubview(controller.view)
controller.view.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
controller.view.rightAnchor.constraint(equalTo: view.rightAnchor).isActive = true
controller.view.topAnchor.constraint(equalTo: view.topAnchor).isActive = true
controller.view.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
controller.didMove(toParentViewController: self)
}
Я работаю над этим для того, что чувствует навсегда, поэтому любые предложения приветствуются.
Спасибо, что отсортирован его. Я вернул пример приложения Apple IceCream и выглядел так, как будто я изменил 'translatesAutoresizingMaskIntoConstraints', однако по какой-то причине они привязаны к topAnchor, а не к макетам. – SimonBarker