2013-06-17 5 views
16

После открытия моего проекта в предпросмотре разработчика Xcode5, ошибки возникли против нескольких файлов .xib, когда я попытался открыть проект в Xcode 4.5. Текст ошибки:Документ «XXXX.xib» не может быть открыт. Не удалось прочитать архив

The document "XXXX.xib" could not be opened. Could not read archive. 

Please use a newer version of Xcode. Consider changing the document's Development Target to preserve compatibility. 

Целью разработки проекта в Xcode5 является iOS 5.0.

Исходя из исходного кода .xib-файлов с ошибками, ясно, что XML-структура для .xib-файлов в Xcode5 изменилась довольно резко, и ее необходимо переформатировать, чтобы быть обратно совместимой.

Есть ли способ установить цели разработки для конкретных файлов .xib? Кто-нибудь знает, как эта ошибка может быть решена?

Большое спасибо.

+0

Это было бы прекрасное время, чтобы предлагать и стараться не звучать самодовольно, когда говоришь ... просто взгляните на свой журнал SCM, чтобы увидеть, что Xcode изменил, и верните. – Daniel

+0

Как я могу просмотреть журнал SCM? Извините, я не думаю, что это вопрос, достойный отметки ... Я разработчик-любитель, ищущий помощь в решении этой проблемы, и я уверен, что многие другие люди испытывают. – Spinoxa

+0

Отметьте, пожалуйста, свой ответ. А также + 1 для того, чтобы задать хороший вопрос. :) –

ответ

6

А лучше и проще решение, которое работает, даже если ваш проект не находится под контролем источника можно найти здесь (мой):

Just installed xcode 5 and have missing storyboards

Надежда, что помогает.

+0

Почему голос? – Idan

4

Очевидно, что вы создали свой проект до предварительного предварительного просмотра редактора xcode. то вы попытались открыть свой проект с новым DP и стрелой, он автоматически изменил все в ваших xibs, чтобы представить ваши xibs в более высокой версии. легко исправить. с вашим xcode 4 ios 6 откройте один и тот же проект, затем щелкните правой кнопкой мыши по имени xib, который не открывается, и выберите источник управления и оттуда выберите сбросить изменения. который должен вернуть xib обратно в форму, перед тем как открыть его с помощью нового xcode DP.

Дайте мне знать, если вам нужна дополнительная помощь, но это должно позаботиться о вашей проблеме.

+0

К сожалению, я не использовал исходный контроль, поэтому «отменить изменения» вернул его в версию примерно 1 год назад! Тем не менее, у меня был снимок с 2 недель назад, и с тех пор я смогу перестроить изменения. Как настроить проект на лучший источник управления? Есть ли способ настроить его так, чтобы он автоматически фиксировал, чтобы вы всегда могли отступить? Или это нужно делать вручную? – Spinoxa

+0

Вы можете создать локальный git и настроить его на автоматическое обновление. Другой способ использовать снимки. Вы также можете настроить источник управления с помощью настроек в xcode. Могут быть и другие способы, но это те, которые я знаю. Удачи, и если мой ответ поможет, пожалуйста, проверьте его как правильный. –

+0

Спасибо за ваш совет, я использовал снимки, но не правильный контроль источника, но я сделаю это с этого момента. Спасибо за вашу помощь, и спасибо также за то, что вернули этот идиотский голос на совершенно правильном вопросе. – Spinoxa

13

Прежде всего открыть проект с помощью Xcode5. а затем

  • выбрать XXX.xib найти Interface Builder документа
  • открывается в Xcode 4.6 (если есть 5,0)
  • Закрытие проекта
  • открыть его с 4.6
+0

wow ... Большое спасибо за этот ответ. – Guru

4

Это текущая проблема когда вы открываете проект Xcode 4.6 с новым XCode 5. Чтобы правильно использовать XIB с Xcode 4.6:

1 Откройте свой проект с XCode 5

2 Выберите XIb для восстановления

3 В файле инспектор Раздел, в "Interface Builder документа", выберите Xcode 4.6 в версии Развития о Document Поддержка версий

4 Сложение и закрыть

5 Возобновить ваш проект с XCode 4.6

Возможно, что в вашем XIB есть некоторая регрессия с размером элементов размером &, но она была успешно восстановлена.

Приветствия,

3
  1. Сначала вы должны открыть ваш спроецируем с новой версией Xcode.
  2. Щелкните правой кнопкой мыши файл XXX.xib и выберите «Показать инспектор файлов».
  3. Перейдите в документ Interface Builder.
  4. Изменить вариант разработки со старой версией Xcode.
14

Просто откройте Раскадровка в XCode 5, в правой панели и вкладка "Инспектор Файл" сделать:

  1. редактировать свои "Interface Builder документа", как следующие:

enter image description here

  1. Сохраните его и откройте в предыдущем XCode.
+0

отлично! Меня устраивает. –

+0

подтвердить, работает Отлично! – hafedh

+1

Спасибо, чувак ... Но есть ли способ изменить все .XIB за один раз, или я должен сделать это индивидуально для всех XIB. – milanpanchal

0

После того, как я использовал для управления проектом с XCode 5 xibs в XCode 4. Я разделил xibs для каждой версии XCode и сделал этот сценарий сборки, который компилирует XIB для кончика пера и места, что СИБ их внутри приложения

#get SDK version 
SDK_VERSION=$(echo $SDKROOT | sed -e 's/.*iPhone\(OS\)*\(Simulator\)*\([0-9]*.[0-9]*\).sdk/\3/') 

if [ $SDK_VERSION == '7.0' ]; then 
    echo 'Current SDK is 7.0' 

    ibtool --compile ${TARGET_BUILD_DIR}/${TARGET_NAME}.app/output.nib ${PROJECT_DIR}/ProjectFolder/input.xib.xib 

    echo 'Copied nibs to' ${TARGET_BUILD_DIR}/${TARGET_NAME}.app 
else 
    echo 'Current SDK is not 7.0 (SDK is' $SDK_VERSION')' 
fi