Недавно я нашел это сообщение, которое, похоже, описывает ту же проблему, что и у меня с добавлением собственного ttf. Мое приложение зависает. Тем не менее, несколько вещей, связанных с этим сообщением, меня путают, и я хотел бы получить некоторую помощь в расшифровке.Советы по отладке проблемы UIAppFonts на iPad
Сообщение здесь: http://web.archiveorange.com/archive/v/nagQXB5eX3YsQpevIXMk
Соответствующие отрывки, которые я пытаюсь понять ниже:
Прикрепление отладчик и задержавшись приложение показывает не особенно полезный стек вызовов:
0 0xffff028f в __spin_lock
1 ??
Специальный код, который вызывает проблему:
CTFontCollectionRef коллекция = CTFontCollectionCreateFromAvailableFonts (NULL); CFArrayRef fonts = CTFontCollectionCreateMatchingFontDescriptors (коллекция); for (id fontDescRef in (NSArray *) шрифты) {CFStringRef fontName = CTFontDescriptorCopyAttribute ((CTFontDescriptorRef) fontDescRef, kCTFontNameAttribute); NSLog (@ "% @", fontName); CFRelease (FontName); }
CFRelease (fonts);Выполнение никогда не перемещается за пределы линии .
Вопрос: Как он выяснил, какая линия и функция вызывают проблему? Было ли это связано с отображением разборки, ее отображением в смешанном режиме или просмотром шестнадцатеричного значения в файле карты? Я хотел бы узнать, как это было сделано.
После попросили поставить демку и поэтому исследовав дальше, я обнаружил, что проблема проявляется если код в моем применения: didFinishLaunchingWithOptions: но если у меня есть один и тот же материал в viewDidLoad моего начального вида контроллер.
Вопрос: что означает «код», который он имеет здесь? Проблема заключалась в добавлении пользовательских шрифтов с помощью значения plist, поэтому я не уверен, что он может сказать, или как я могу обойти мою проблему.
Пожалуйста, помогите!
Вы когда-нибудь находили решение этой проблемы? –
Я не думаю, что Apple исправила это, если это то, что вы имеете в виду. Однако я смог использовать обходной путь в ответе, который я написал ниже. – Joey