Ответ 1
Выберите все сцены (View Controllers) в раскадровке, покажите инспектору размера, измените Simulated Size на Freeform, затем установите Width Height = 600.
Затем эти тонны предупреждений исчезают.
Я только что преобразовал проект Xcode с Xcode 7.3 в Xcode 8 GM, и я получаю более 80 предупреждений о ограничениях. В Xcode 7 мои раскадровки были "большими квадратами", а не конкретным размером iPhone. Теперь, с Xcode 8, вы можете изменить размер iPhone и iPad. Мои ограничения все еще появляются, как и в случае с более квадратичными VC в Xcode 7. Есть ли "быстрое" исправление или мне нужно пройти через все приложение и исправить каждое ограничение (гораздо больше 80)?
ОБНОВЛЕНИЕ: сентябрь 20,2016 → Многие отчеты об ошибках были поданы на основе этого, и Apple должна осознавать эту проблему. Я буду обновлять ответ, как только проблема будет исправлена.
Выберите все сцены (View Controllers) в раскадровке, покажите инспектору размера, измените Simulated Size на Freeform, затем установите Width Height = 600.
Затем эти тонны предупреждений исчезают.
У меня была такая же проблема при обновлении до Xcode 8. Моя раскадровка выглядела так же, как вы описываете. Проверьте свои предупреждения/ошибки. Если все они говорят что-то вроде "установить приоритет вертикального обхода на X" или "установить сопротивление сжатию Y", тогда вы сможете исправить свою проблему, установив приоритеты, как было предложено.
Нажмите предупреждение, а затем в инспекторе атрибутов под вкладкой с значком линейки (не уверен, что называется этой вкладкой) вы можете установить приоритеты в Content Hugging Priority и Content Сжатие при сжатии. Когда вы обновляете эти свойства, предупреждения должны начинаться с неправильных предупреждений о кадрах, после чего вы можете просто обновить фреймы.
Это может быть не быстрое исправление, но изменение некоторых приоритетов для некоторых ограничений проще, чем повторение всех ограничений. Надеюсь, это поможет!
Выберите контроллеры просмотра один за другим и нажмите "Обновить кадры" каждый раз.