Вот как я сделал универсальное приложение из существующего проекта iPhone, создав ~ ipad.xib (s) с использованием дубликатов, а затем добавив их обратно в резервную копию проекта и проверив универсальный.
Iиспользовал xcode 4.02 с базовым sdk 4.3.3 с целью развертывания 3.1.2.
- Создайте резервную копию всего проекта.
- Щелкните правой кнопкой мыши на цели iPhone и выберите дубликат,Выберите дубликат для iPad, а не просто дубликат.Это создаст новую папку с именем Resources-iPad с подпапкой, которая будет называться классами, в которой находятся копии всех файлов XIB во всем проекте.(Самое смешное, что когда я смотрю на эти файлы в Finder, у них нет расширения .xib, хотя они показывают расширение в окне xcode - почему? Однако Finder все равно говорит, что это файлы xib.)
- На данный момент у меня было две цели.Это казалось неправильным, поэтому я пошел к поиску и сделал резервную копию новой папки Resources-iPad, а затем удалил весь проект.
- Скопируйте обратно оригинальный проект iPhone, резервное копирование которого я выполнял на шаге 1.
- Добавил резервную копию папки Resources-iPad и отредактировал их, чтобы они выглядели хорошо для iPad.
- Теперь у меня была одна цель, которая казалась хорошей, и я сделал ее универсальным устройством вместо iPhone в сводке целей.
- Однако при развертывании на симуляторе или устройстве я получал непоследовательное поведение - иногданеправильный xib будет использоваться без видимой причины.
- Это исправлено - в xcode, в папке Resources-iPad / classes переименуйте все xibs для ipad из mynibname.xib в mynibname ~ ipad.xib (tilda inспереди и все в нижнем регистре)
Я не смог найти никакой документации о том, нормально ли это делать таким образом.До сих пор он работает на следующих физических устройствах:
iPad 2 с 4.3, iPod touch v1 с 3.1.2, iPod touch v4 (сетчатка) с 4.1
. Это правильный способ созданияуниверсальное приложение?Кажется, теперь это достаточно просто, так как у меня все получилось, но я нашел эту информацию навсегда.Кроме того, у меня нет mainwindow.xib, но есть другие перья, которые загружаются в других местах в виде заголовков разделов таблиц и подробных представлений в приложении с вкладками - поэтому я оставил разделы основного интерфейса пустыми.
О - нетиметь iPad 1 и не могу протестировать на этом устройстве, но он не работает должным образом в симуляторе iPad 3.2, но все другие устройства и симуляторы работают нормально.