2014-09-11 4 views
16

Я только что загрузил XCode 6 GM и каждый раз, когда я выбираю основной раскадровки (и определенный xib), происходит сбой XCode.XCode 6 GM падает при выборе основной раскадровки или xib

Ошибка будет отправлена ​​в Apple, содержит следующую информацию

Assertion Неудача в /SourceCache/IDEInterfaceBuilderCocoaTouch/IDEInterfaceBuilderCocoaTouch-6238/InterfaceBuilder/Documents/IBCocoaTouchPlatform.m:531 Детали: возвращаемый результат вычисления состояния не является IBMarshallingResult, это {

Кто-нибудь испытывает ту же проблему?

+2

Такая же проблема здесь! Очень расстраивает! – mikemike396

+1

Сбой, или он не реагирует? Я переживаю позже. – Brandon

+1

@BrandonRoth расширенная невосприимчивость привела к сбою XCode почти каждый раз – abinop

ответ

0

Было ли это из более ранней версии Xcode, или это было из одного из ранних выпусков Xcode 6? Если последнее, то решение будет состоять в его воссоздании.

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

Я также предлагаю проверить, были ли ваши объекты реализованы атрибут IBDesignable, и если вы использовали это в раскадровке; если это так, возможно, отказ NSCoder в возможности восстановить объект из файла.

3

(1) Вы очистили и перестроили проект?

(2) Вы пытались удалить папку xcuserdata? Папка содержит состояния ui и может быть причиной такой проблемы, особенно когда xcode был обновлен. Папка xcuserdata может быть найдена в вашем каталоге проекта, когда вы щелкните правой кнопкой мыши на вашем файле .xcodeproj и выберите «показать содержимое пакета». Закройте Xcode, запустите папку xcuserdata и снова запустите файл .xcodeproj.

Надежда один из них помогает :)

+0

Нашел еще одну причину проблемы: http://stackoverflow.com/questions/9109571/xcode-wont-compile-ios-apps-crashes-when-xib-or-storyboard-files-are-opened?rq=1 Если вы используйте TotalFinder, это может быть проблемой. – Eike

+0

Удаление папки .xcuserdata работало для меня - была только эта проблема при просмотре раскадровки; не xib. –

+0

Уборка xcuserdata, кажется, работает надолго для меня. Эта проблема часто возникала, так как я изменил имя своего приложения iOS. –

23

Я слышал, что это может быть проблемой autolayout, поэтому я попытался отключить его вручную, и это сработало!

Если вы щелкните правой кнопкой мыши файл раскадровки, откройте его как исходный код и УДАЛИТЕ useAutolayout = "YES", а затем очистите, перестройте, вы можете открыть без проблем.

+0

это действительно сработало для меня на сборке 6.0.1, спасибо! – MiMo

+0

Это работало и для меня, и благодаря @Edgar Rocha Carvalho. – Manolo

+0

Фактически точный должен быть удален useAutolayout = "YES" :) – tong

1

Если люди используют несколько вкладок, которые могут быть проблемой. Мой XCode 6.0.1 становился невосприимчивым, когда один и тот же раскадровка открывалась более чем на одной вкладке ...

0

Я занимался такой же проблемой после обновления с Xcode 5 до 6.0.1. Попытка загрузить мой большой и сложный планшет iPad поможет заморозить Xcode, поднять Pinwheel Of Death и в конечном итоге выбить его из строя. Иногда он также показывал ошибки при сборке, указывая на отсутствие идентификаторов OID.

В итоге я вернул файл раскадровки в Git (через командную строку, так как Xcode не позволил мне зайти так далеко) вплоть до самой первой версии с прямым шаблоном. Я очистил проект и перестроил его, и раскадровка загрузилась должным образом.

Затем я отправился вперед во время совершения совершения, очистки и строительства каждый раз.Я ожидал, что дойду до того, что все снова сломается - но я добрался до самого последнего коммита без каких-либо зависаний.

Однако, когда я попытался продвинуться вперед на несколько недель, я снова получил заморозки и сработал.

Интересно, нужно ли новому редактору раскадровки в 6.0.1 создавать свои внутренние представления (и кеши?) В меньших простых шагах, а не гигантский скачок полного сложного файла.

Этот процесс отката/перемотки вперед/перестройки занял у меня около 45 минут, но это намного меньше времени, чем потребовалось бы для меня, чтобы перестроить эту раскадровку. Надеюсь, это вам поможет.

0

Одно из решений этого - открыть xib в XCode 5 и позволить ему сменить набор настроек. Затем откройте в Xcode 6.

16

Это вызывало у меня массу проблем, и повторное создание раскадровки не было вариантом. Я получил мимо него по Ctrl/правой кнопкой мыши на раскадровке и делать

«Открыть»> «Исходный код»

Затем я сделал небольшое изменение, развязал его и повторно сохраните файл , Тогда я сделал

"Открыть"> "Интерфейс Builder - раскадровки"

Он открылся без сбоев XCode.

+3

Это красиво! Это должен быть принятый ответ! – Ravi

+0

@ Ravi Согласен. +1 – Houssni

+0

Он также работал для меня, но я должен делать это регулярно, открывая мою основную раскадровку, чтобы сбой XC. Таким образом, этот ответ не является долговременным решением для меня: -/ –

0

Я только что испытал то же самое. Это оказалось дубликатом UILabel в раскадровке из-за слияния git. По-видимому, Xcode будет сбой, если два элемента интерфейса имеют один и тот же внутренний идентификатор.

В некотором роде, подобном методу андрю-бурке, мой метод обнаружения ответственной проблемы включал отслеживание через git для изменения проблемы. Шаги:

  • Итерационный шаг назад по истории git, проверка каждого фиксации до тех пор, пока вы не найдете первый раскадровки, который не разбивает Xcode.
  • После того, как вы совершили сбой, проверьте HEAD и итеративно верните изменения раскадровки в проблеме commit. Продолжайте сузить его до тех пор, пока не появится один элемент пользовательского интерфейса или одна строка, которая приведет к сбою.
  • Навсегда восстановить ответственное изменение и перезапустить Xcode. Откройте раскадровку снова, и вас могут предупредить о внутренней несогласованности. Согласитесь с предлагаемыми изменениями Xcode, но просмотрите их.
  • При необходимости вы можете попытаться повторно создать элемент пользовательского интерфейса или внести изменения с нуля, которые ранее вызывали проблему.
8

Чтобы устранить эту проблему:

  1. открыть окно Finder и перейдите к вашему проекту
  2. правой кнопкой мыши на.xcodeproj файл (это пакет на самом деле)
  3. выберите Show Package Contents
  4. появится новое окно
  5. удалить папку xcuserdata

Как избежать этого в будущем: раз добавлено в .gitignore , вы должны выполнить следующую команду:

git rm --cached ProjectFolder.xcodeproj/project.xcworkspace/xcuserdata/yourUserName.xcuserdatad/UserInterfaceState.xcuserstate 

git commit -m "Removing file thats driving me insane" 
+0

Ты спас мне часы, спасибо! – Niralp

+0

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

0

Мой Xcode разбился, когда я потащил кнопку на Main.storyboard создать IBOutlet.

Я нашел, что это вызвано элементом настроек сборки - [Целевой-Автоматический подсчет ссылок].

Если установлено значение «Нет», Xcode выйдет из строя при создании IBOutlet.

OS X Version: Yosemite 10.10.1 

Xcode Version: 6.1.1 (6A2008a) 

Надеюсь, это поможет.

0

То, что сработало для меня, и до сих пор используют AutoLayout

  1. Откройте раскадровку как исходный код
  2. Редактирование useAutolayout = "YES" в useAutolayout = "NO"
  3. Закрытие исходного кода
  4. Откройте раскадровку в качестве интерфейса Builder - Раскадровка
  5. И это самый важный шаг: в File Inspector V iew (левая панель) проверка «Использовать автозапуск»

Выполнено.

0

Xcode 7.1 на Mac OS X 10.11.1 разбился и открыл тот же проект, щелкнув правой кнопкой мыши значок xcode, и он снова разбился. Затем я исправил значок xcode и открыл какой-то другой проект из недавнего списка, а затем открыл тот же проект, который был сбой с недавнего пункта меню xcode, и он не сработал.

0

Я столкнулся с этим на XCode 8, и я был в состоянии

  • сохранить мои продажных изменения раскадровки на мерзавец отрасли.
  • перешел на другой ветви вернуться к более старой фиксации до Раскадровка получил испорчены
  • вид раскадровки файла в XCode
  • переключатель обратно в отделение с коррумпированной раскадровки, и XCode не врезаться в то же время просмотра файл раскадровки
Смежные вопросы