Мне кажется, я понимаю, что вы имеете в виду ... вы хотите выделить текст, а selectedRange не работает, верно?
Если это так, то прочитайте это:
selectedRange работает только когда клавиатура показывает. В своем текстовом приложении ты не хочешь этого, верно?
Так что вам понадобится хотя бы CALayer, чтобы он выглядел как выбранный.
Также вам нужны координаты текста, и это не простая задача.
Если ваш текст статичен (шрифт, размер, ширина рамки никогда не изменяется), вы можете иметь координаты текста в словаре, чтобы вы могли соответственно изменить размер CALayer
Надеюсь, это поможет.
GoodLuck