После обновления до Xcode 6.3 (выпускная версия) Xcode теперь зависает каждый раз, когда я открываю файл XIB / Storyboard, который включает IB_DESIGNABLE
представлениекоторый использует собственный шрифтдля любых проектов и включает собственный шрифт (не обязательно иметь ссылку на этот шрифт в этом XIB / раскадровке). Зависание происходит после открытия файла .xib и последующей попытки переключения на любой другой файл. Xcode зависает и должен быть принудительно завершен.
Я открыл отчет об ошибке в Apple. (Ошибка 20483867).
Прямо сейчас у меня есть две возможности.
- Загрузите и используйте Xcode 6.2 от Apple.
- Удалите теги IB_DESIGNABLE из файлов заголовков настраиваемого представления.
Вероятно, это ошибка Apple, но есть ли у кого-нибудь лучшее решение или решение?
IB_DESIGNABLE
атрибутов решает эту проблему. Сейчас вернусь к 6.2 fow ...Ответы:
Xcode 6.3.1 устраняет проблему с пользовательскими шрифтами и
IB_DESIGNABLE
представлениями в раскадровке. Обновите через Mac App Store, и все будет хорошо.источник
Я уже предложил правку для более точного описания .
Это происходит только тогда, когда ваш проект содержит собственный шрифт. Он зависнет, просто посетив любую раскадровку / XIB, которая содержит настраиваемое представление IBDesignable, даже не ссылаясь на этот шрифт в вашей раскадровке / XIB.
Мой обходной путь -
использовать более старую версию Xcode (бета-версию Xcode 6.3 или Xcode 6.2) и использовать ее для обновления файлов Interface Builder и никогда не открывать ее в 6.3.откройте эти Storyboard / XIB в новом окне в Xcode сoption
+shift
+click
файлом в дереве проекта.Всякий раз, когда вы сталкиваетесь с зависанием, я использую эту команду, чтобы очистить сохраненное состояние только для этого проекта.
rm -rf YourProject.xcodeproj/project.xcworkspace/xcuserdata
источник
xcuserdata
полезна. работает на меня.Ответ Apple: ссылка на форумы разработчиков Apple
источник
У меня такая же проблема. Удаление IB_DESIGNABLE решает проблему. Возврат к 6.2 не работает для меня, поскольку я тестирую приложения на устройстве с iOS 8.3 - Xcode 6.2 не может запускать приложения на устройствах с iOS 8.3 :(
источник
Другой обходной путь - изменить расширения файлов для всех файлов шрифтов и загрузить измененные имена файлов из Info.plist. Таким образом, вы можете сохранить IBDesignables и по-прежнему использовать свои собственные шрифты, но не сможете видеть их в средстве выбора шрифтов в Interface Builder.
Все пользовательские шрифты, которые были предварительно установлены из Interface Builder, будут продолжать работать, но для того, чтобы изменить их или установить другие пользовательские шрифты, вам нужно будет сделать это либо из кода, либо изменить файлы раскадровки или перьев из текстового редактора по порядку. для установки названия шрифта.
источник
У меня нет ответа, но я обнаружил, что простой принудительный выход и перезапуск перезапускают Xcode в той же ситуации. Чтобы просто перезапустить Xcode, удалите папку
~/Library/Saved Application State/com.apple.dt.Xcode.savedState
.источник
Эта ошибка была исправлена в бета-версии 6.4 Xcode, которая вышла сегодня. Перейдите в центр разработки и войдите в систему, чтобы загрузить его.
источник
Xcode 8.1 - если у вас есть представление с навигацией (в моем случае это была верхняя непрозрачная панель навигации), просто попробуйте установить для свойства «верхняя панель» значение None.
источник
В качестве обходного пути я просто закомментировал всю разметку @IBDesignable в нескольких пользовательских компонентах, которые ее используют. Когда я это сделал, да, я потерял возможность настраивать параметры в Interface Builder, но это позволило мне по крайней мере открыть файлы .xib без сбоя XCode.
Я просто не буду комментировать эти строки @IBDesignable, когда Apple придет с исправлением.
источник
@O. Ответ Курненкова сработал для меня. Это не имело ничего общего ни с IB_Designable, ни с пользовательскими шрифтами, Cocoapods и т. Д.
По какой-то причине наличие «непрозрачной панели навигации» заставляет
nib
файл (похоже, это не влияет наstoryboard
s) постоянно менятьy
положение; это можно увидеть в том месте,Size Inspector
гдеy
позиция будет мерцать между 0 и 64. Это происходит со мной с Xcode 8.2 (8C38).Я предполагаю, что это заставляет Xcode постоянно обновлять макет, истощая ресурсы и заставляя его зависать / зависать.
Решение состоит в том, чтобы использовать любой из параметров «Полупрозрачный», «Предполагаемый» или «Нет».
Надеюсь это поможет!
источник