Я добавляю текст постепенно к упаковке CATextLayer
в UIScrollView
. Каждый раз, когда я добавляю текст, мне нужно добавить высоту к текстовому слою и к contentSize
scrollView и настроить contentOffset
.
scrollView.
(Пользователь должен иметь возможность использовать scrollView для просмотра предыдущего текста, но когда добавляется новый текст, я хочу прокрутить его вниз программно.)
UIKit sizeWithFont:
будет обрабатывать всю строку так, как если бы она находилась в одной строке, поэтому для вычисления высоты мне нужно умножить размер size.height, возвращаемый на количество строк, полученное в результате переноса textLayer.
Проблема в том, что если я получу доступ к строке через textLayer, она не будет содержать никаких дополнительных символов "\ n" или "\ r" для учета переноса.
Конечно, есть какой-то способ получить информацию об упаковке? Может быть, как-то из суперкласса CALayer
? В противном случае я застреваю в расчете собственных разрывов строк.