У меня есть приложение, которое использует несколько пользовательских шрифтов. Когда приложение работает в iOS 5, шрифты отображаются корректно, но в 4.3 они этого не делают, а системные шрифты заменяются. Кроме того, я использую NSAttributedStrings для создания богатого текста в подклассе UILabel. В iOS 5 присваиваемая строка работает нормально, но в 4.3 сбой приложения. Грохот поставляется в категории на NSAttributedString в этом методе:Проблемы с шрифтом iOS 5.0 vs 4.3
-(void)setFontName:(NSString*)fontName size:(CGFloat)size range:(NSRange)range {
// kCTFontAttributeName
// crashes on next line
CTFontRef aFont = CTFontCreateWithName((__bridge CFStringRef)fontName, size, NULL);
if (!aFont) return;
[self removeAttribute:(NSString*)kCTFontAttributeName range:range]; // Work around for Apple leak
[self addAttribute:(NSString*)kCTFontAttributeName value:(__bridge id)aFont range:range];
CFRelease(aFont);
}
Любые идеи о том, что прищурив свои шрифты в 4.3? Я сделал быстрый тестовый проект с использованием одних и тех же шрифтов, и они работают правильно в 4.3.
Jk
Где конкретно (какая линия) происходит сбой, и какова конечная причина сбоя (исключение или сигнал)? –
И сообщение, напечатанное с крахом, это ... ?? –
Нет сообщения о сбое в консоли, просто EXC_BAD_ACCESS в строке, прокомментированной в коде выше // сбой в следующей строке – Alpinista