Каков наиболее эффективный способ рендеринга быстрого изменения текста (10-15 номеров, которые меняют каждый отдельный кадр) в iOS? Это те попытки, которые я сделал до сих пор:
1) CATextLayer
+ CTFont
и NSString
: Очень быстро, но нет доступа к кернингам, которые мне нужны. (Если кто-то знает трюк, как заставить кернинг работать с CTFont
и без NSAttributedString
, это тоже было бы круто, но это не главный вопрос;))
2) CATextLayer
+ NSAttributedString
: Медленный и медленный. Я вижу огромные капли FPS по сравнению с 1). В моем приложении это изменение позволяет уменьшить FPS с 50-60 до 30.
3) Растровые шрифты с использованием UIImageViews
и UIImage
для отображения чисел: очень быстро, хотя и не очень удовлетворительно, так как в iOS должен быть лучший способ/более естественный способ рендеринга шрифтов.
EDIT:
4) UILabel
+ NSString
- Довольно быстро, но опять же нет доступа к кернингам.
5) UILabel
+ NSAttributedString
- Медленно и лагги снова.
Рендеринг NSAttributedString
намного медленнее, чем рендеринг базового NSString
. Это действительно расстраивает, так как все, что мне нужно от NSAttributedString
, в данный момент - это расстояние между буквами.