До того, как я обновился до Xcode 8
я не видел этой ошибки в таком случае. У меня разные навигационные контроллеры. Для всех них я вижу ошибку Frame for "Navigation bar" will be different at the run time. Navigation bar "Expected: width=384, Actual: width=375
Frame for "Navigation bar" will be different at the run time. Navigation bar "Expected: width=384, Actual: width=375
На самом деле эти навигационные контроллеры не имеют Navigation bar
Navigation bar
существует для подпредставлений. В любом случае, я могу решить ее, установив галочку и сняв флажок" Shows navigation bar
в Attributes inspector
Но, к сожалению, каждый раз, когда я снова Main.storyboard
это предупреждение появляется снова. Также, если я нажимаю на желтый треугольник, а затем на фреймах обновления, ничего не происходит.
Предупреждающая рамка для "Панели навигации" будет отличаться во время выполнения появляется в Xcode 8 Swift 3
Ответ 1
Предупреждение исчезнет, если вы измените свойство "Имитированный размер" на "Свободная форма".
Ответ 2
Как уже упоминалось здесь, вы можете исправить это, включив/выключив настройку вложений ScrollView.
Ответ 3
Я изменил с View как: iPhone 6S на iPhone 5S, а затем вернулся на iPhone 6S, и Xcode сделал все изменения, чтобы удалить предупреждение.
Ответ 4
Это работало для меня в Xcode 8.3.1 После перезапуска Xcode он все равно будет работать.
- Выберите "Контроллер навигации"
- Перейти к Показать инспектора размеров
- Изменение имитированного размера в Freeform
- Изменить размерный размер обратно на Fixed
- Затем предупреждения исчезают.
Ответ 5
В качестве обходного пути, чтобы избавиться от раздражающего предупреждения, я редактировал Main.storyboard вручную, удалив "неуместно" в:
<navigationBar key="navigationBar" opaque="NO" contentMode="scaleToFill" misplaced="YES" translucent="NO" id="Os1-Xh-7XN">
Взломать, но хорошо иметь нулевые предупреждения, а не 1:)
Ответ 6
Нажмите "Посмотреть как" в левом нижнем углу раскадровки и выберите другой размер устройства, затем нажмите его еще раз и верните размер устройства, с которого вы начали. Это сработало для меня.
Ответ 7
Пока Xcode 8 не будет исправлен, вы можете установить опцию "Просмотр как:" на "iPhone SE", чтобы устранить предупреждение. Не идеально, но работает пока.
Ответ 8
Я пробовал все вышеперечисленные предложения, но он, похоже, не работал. Я думаю, что это может быть более серьезная ошибка.
Я зарегистрировал ошибку с Apple Bug Reporter (ссылка: https://bugreport.apple.com/logon) - если вы хотите сделать то же самое, тогда пожалуйста контрольная ошибка: 31355220
, чтобы Apple могла связать ее вместе. Чем больше людей сообщают об этом, тем больше информации им придется исправить эту досаду.
Ответ 9
Мне удалось полностью избавиться от этой проблемы, установив имитированный размер контроллера вида в свободную форму и затем установив ширину от 375 до 320.
Ответ 10
Имел ту же проблему, вот что я сделал, чтобы исправить:
Разверните информацию об ошибке и нажмите на подробную информацию о предупреждении. Затем Xcode автоматически откроет параметры измерения/положения. Замените текущее значение значением, указанным в деталях предупреждений.
В принципе, убедитесь, что размер в вашей среде выполнения совпадает с размером, указанным в инспекторе размеров.
Вы также можете щелкнуть значок рядом с изображением, которое вы разместили (желтый треугольник с белым кружком. Иногда его значок красного круга), тогда будут варианты автоматического исправления/корректировки проблем.
Я выбрал опцию ограничения обновлений, а затем скорректировал новые ограничения.
Ответ 11
для меня проблема заключалась в том, что я прятал нижнюю панель при нажатии (используя IB-флажок).
Мне пришлось выбрать "none" в опции "bottom bar":
Ответ 12
Хорошо, похоже, я исправил проблему. Вот что я сделал.
Выберите фреймы обновления, как обычно. Откройте другой файл, а затем щелкните обратно в файле раскадровки. Если это не сработает, перезапустите Xcode. Похоже, что он обновлялся внутренне, но интерфейс-интерфейс для интерфейса был застрял, как это иногда бывает.
Ответ 13
Пожалуйста, измените свое устройство. Предварительный просмотр в xcode для просмотра контроллера и компиляции и проверки на наличие предупреждений...
Xcode 8 является бит-ошибкой, Interface builder reset со случайным значением, которое влияет на все содержащиеся представления. Попробуйте изменить устройство предварительного просмотра.