Xcode 6.3 Збій при переході з розкадровки до іншого файлу Swift 1.2


80

Я встановив Xcode 6.3, який включає підтримку Swift 1.2. Це виявило масу повідомлень про помилки, які в основному є проблемами з кастингом.

Я перейшов до розкадровки, і не можу повернутися до жодної іншої, .swiftне розбившись. У мене є вихід із системи, перезапуск і навіть перевстановлення, і я все ще не можу відійти від Main.storyboardфайлу.

Я спробував описану тут пропозицію відкрити раскадровку як код, внести деякі зміни, скасувати ці зміни, зберегти та спробувати ще раз, і все одно не пощастило.

Чи щось у моєму коді порушує Xcode? Хтось ще переживає це? Я успішно використовував бета-версію Xcode 6.3 з тією самою кодовою базою.

Оновлення: Наразі це виправлено у Xcode 6.3.1, випущеному 21 квітня 2015 року.


1
Ті самі аварії тут ...
Даніель Надь

3
HoaParis все ще збій після перетворення. Я маю на увазі, що я буквально застряг на раскадровці. Я навіть не можу закрити поточний проект, щоб відкрити інший проект.
камінь

2
Це не лише швидка проблема ... Objective-C також
Омід Хашемі

2
Радар надіслано: openradar.me/20498652
Ентоні

3
Не тільки з Storyboard to Swift, також розвалюється Storyboard у файл Obj-C.
daidai

Відповіді:


67

На форумах розробників Apple я зрозумів, що це проблема @IBDesignable . Особливо в проектах, що використовують власні шрифти, додаткові файли xibs тощо.

Я якось вирішив свою проблему, видаливши всі @IBDesignable із швидких визначень класу UIView. Ви можете відкрити каталог проекту за допомогою TextMate або іншого, шукати та видаляти всі "@IBDesignable"

Однак я все ще вважаю, що це ГОЛОВНА помилка, над якою потрібно попрацювати .. тому продовжуйте подавати звіти про помилки в Apple.


Я успішно перетворив усі свої проекти, окрім того, де я використовую IBDesignable, тому я впевнений, що @livingstonef на щось
Unome,

також може підтвердити. видалення @IBDesignable змушує xcode працювати. Дякую!
alexdd55

Чи є для цього радар?
SushiGrass Jacob

21

Тимчасове рішення :

Відкривши "Нове вікно" (той самий проект).

Один для коду, один для розкадрування або зменшення першого, вільно працюйте з другим вікном.

Ви можете залишити свій @IBDesignables


EDIT: Виправлено помилку -> Оновити Xcode 6.3.1


1
Робота ... Ви можете приховати свій Навігатор, Cmd+0щоб не мати спокуси змінювати файли в додатковому вікні.
Bartłomiej Semańczyk

1
інше рішення - перейменувати файл розкадровки у finder, перейти на потрібний клас і бути щасливим !!! ))))) Мені подобаються оновлення Apple, де Stive? Допоможіть нам
Матросов Олександр

15

Запуск Xcode утримуючи, shiftвиправив це для мене.

(Це пригнічує відновлення стану Xcode.)


Оновлення: Xcode 6.3.1, випущений сьогодні, вирішує цю проблему.


1
Це фантастична допомога. Я постійно потрапляв у пастку зі старими вікнами, які відновлювались, будучи в змозі обійти це чудово. Дякую +1
Unome


0

Тимчасове рішення:

Якщо ви наразі відкрили Assistant Editor, перейдіть до іншого файлу за допомогою alt+click. Ви можете залишити свій @IBDesignables.


0

Ось як я обійду цю дивну помилку:

  1. Перш ніж запускати Xcode, перейменуйте файл розкадровки у пошуку, щоб Xcode його не знайшов (наприклад, додайте розширення .temp)
  2. Запуск Xcode - чудово працює, навіть якщо його раніше повішали, оскільки він не може відобразити редактор розкадрування
  3. Відкрийте нове вікно в Xcode
  4. Перейменуйте файл розкадровки на оригінальну назву
  5. У новому вікні в Xcode - виберіть розкадрування - Xcode не зависає
  6. Згорніть нове вікно та працюйте, як зазвичай, у вихідному вікні. Тепер ви можете вибрати будь-який файл - навіть розкадровку - без зависання Xcode

Однак одна проблема залишається, принаймні для мене. Кожного разу, коли я вибираю файл або щось редагую, Xcode повинен перекомпілювати розкадрування. Ще цього не вирішив.


0

Я можу підтвердити цю помилку. Я застряг у раскадровці і нічого не міг з неї вибратися (навіть асистент не міг відкрити). Для вирішення проблеми, відкривши розкадрування, клацніть .storyboardфайл правою кнопкою миші та виберіть Open As- Source Code. Це дозволить переключити вашу розкадрування на код, і ви зможете перейти до будь-якого файлу.


Це лише тимчасове виправлення, як тільки ви знову переглянете розкадрування, ви повернетесь до тієї самої проблеми
amir

Так. Мені просто потрібно було знайти спосіб вибратися з розкадровки, і поки що це було єдине, що працювало, не видаляючи всі мої IB_DESIGNABLES
Андрій Філіп

Ви можете двічі клацнути інший файл і тримати розкадрування теж у фоновому режимі.
amir

Це допомагає позбутися від нього. Я не хочу, щоб розкадровка була відкритою у фоновому режимі, оскільки вона досить складна і з’їдає ресурси, щоб тримати її відкритою. Це лише тимчасове рішення, завдяки якому вам не потрібно міняти IB_DESIGNABLES і все одно мати можливість використовувати Xcode :)
Андрій Філіп

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.