2017-01-10 2 views
0

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

Но проблема в том, что я обычно пишу небольшую демонстрационную версию, когда нет установленного LaunchImage, почему этот небольшой демонстрационный дисплей корректен?

Почему LaunchImage вызывает отображение интерфейса ненормально?

+0

Новые приложения, созданные в Xcode, запускают запуск NIB/раскадровки по умолчанию. Ваше приложение не будет масштабироваться, если нет экранов запуска/NIB/раскадровка – rckoenes

+0

Вы имеете в виду, что вид меньше (в точках) и появляется увеличенным? – johnyu

+0

@ rckoenes, но когда я пишу какую-то демо-версию самостоятельно. Я вообще не устанавливал LaunchImage. почему эта демонстрация работает очень корректно. я имею в виду окна Похоже, что это должно быть. – Neko

ответ

1

Если возможно, что оно масштабируется и «экран меньше», вы имеете в виду, что в коде его размер в точках меньше, чем должен быть, то это, похоже, проблема, которая может быть прослежена до выпуска iPhone 5. До того, как он вышел, все iPhone имели одинаковый размер экрана (в точках): 320x480. Затем появился iPhone 5 и его новый размер экрана: 320x568. Apple должна была убедиться, что все ранее выпущенные приложения будут работать, и их макет не будет сумасшедшим на экране, немного больше, чем тот, для которого они были разработаны.

Решение отображает «старые» приложения на новом iPhone 5 с черными полосками сверху/снизу, поэтому их размер может оставаться таким же, как и раньше. Приложение должно иметь поддержку экрана iPhone 5, явно указанного для отображения на весь экран, и они, как вы указали, должны были добавить LaunchImage с соответствующим размером для iPhone 5. Отсутствие этого LaunchImage означало, что приложение должно отображаться с черные полосы. То же самое произошло с iPhone 6 и 6+, которые представили новые размеры экрана и все еще нуждались в поддержке старых приложений, выпущенных до их выхода.

Спекуляция на моей стороне (если у кого-то есть лучшая информация по этому вопросу, не стесняйтесь редактировать/комментировать), возможно, вы сделали другие демонстрации в новой версии XCode, которая по умолчанию предполагает, что ваше приложение будет поддерживать весь текущий экран размеры. Если загруженный демонстрационный проект был выполнен в более старой версии XCode, он не будет перезаписывать эти настройки, чтобы не поддерживать более крупные экраны, если у вас нет их конкретных LaunchImages.

+0

Большое спасибо, полностью решил мой вопрос. – Neko

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