Как узнать координаты последнего символа, который добавлен в UITextView в iPad - PullRequest
0 голосов
/ 16 марта 2011

Я хочу вставить UITextField между текстом UITextView, чтобы обеспечить функциональность «заполнения пробелов».Я знаю, что UITextField не может быть добавлен в UITextView, поэтому я хочу добавить UITextField в супер-представление UITextView, оставляя место для этих UITextFields в UITextView.

Как определить координаты конкретногосимвол относительно происхождения UITextView?Рамка textView и его суперпредставления совпадают.Может кто-нибудь, пожалуйста, скажите мне, как это сделать?Есть ли какой-либо другой способ добиться заполнения функциональности пробелов с помощью абзаца текста?

1 Ответ

0 голосов
/ 16 марта 2011

Вы можете использовать дополнения UIStringDrawing к классу NSString , чтобы помочь найти местоположение символов.

// characterIndex is the index of the character for which you are finding the position
NSString *string = [myTextView.text substringToIndex:characterIndex];
CGSize sizeOfString = [string sizeWithFont:myTextView.font constrainedToSize:myTextView.contentSize];

Если искомый символ находится в первой строке текстового представления, sizeOfString даст вам координаты (смещение на высоту строки).

Если искомый символ находится не в первой строке, вам нужно будет итеративно определить местоположение каждого символа до искомого символа, изменив подстроку для удаления предыдущих строк текста при каждом обнаружении. конец строки. Вы можете определить конец строки, заметив, что высота sizeOfString изменилась между итерациями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...