2016-09-26 3 views
2

Недавно я обновил свой проект iOS в Swift 2.3, который требуется Xcode8. Существует новая функция в построителе интерфейса, представленная в Xcode8, которая является функцией View As:, где я могу переключаться на разные устройства и просматривать результат прямо из конструктора интерфейса, фактически не запуская приложение. Это быстро становится моей любимой функцией в Xcode8. Но я заметил, что при работе с UIImageView с помощью этой функции наблюдается некоторая ошибка.Xcode8 Interface Builder UIImageView показывает неизвестное изображение на разных устройствах

В интерфейсном построителе UIImageView отображает изображение только в iPhone 6s Plus после ввода источника изображения. Он показывает большой знак вопроса на изображении после того, как я переключился на другое устройство в опции View as:.

enter image description here

Как вы можете видеть, изображение на дисплее правильно, когда я установил его, чтобы посмотреть, как iPhone 6s Plus.

enter image description here

Когда переключатель к любым другим устройствам, изображение становится неизвестным. Хотя это не повлияет на конечный результат, изображение будет отображаться правильно при запуске приложения. Просто он чувствует себя так неправильно, когда он не может правильно отобразиться в построителе интерфейса.

+0

У меня тоже есть эта проблема, но я еще не понял, как ее обойти. –

ответ

2

Только что ответил на вопрос here.

Решение:

У меня была такая же проблема, и я узнал, что это потому, что я не имею изображение в размере, который соответствует «Просмотр в виде» устройства, выбранного в раскадровке (слева внизу).

Если вы выбрали устройство, которому требуется изображение @ 2x (пример: iPhone 6s), и у вас есть только изображение @ 3x (как и я), вы увидите знак вопроса. Если вы добавите размер изображения, соответствующего размеру устройства, которое вы используете для раскадровки, изображение появится в вашем изображении.

В принципе, вы хотите иметь изображение во всех трех размерах: @ 1x, @ 2x и @ 3x.

+0

Это работает после того, как я поставил 2x и 1x изображения в свои изображения. Однако это просто не имеет смысла, когда изображение может отображаться во время выполнения, но не может отображаться в IB, когда отсутствуют изображения 2x и 1x. В любом случае, спасибо :) –

Смежные вопросы