Как узнать, какое слово подчеркнуто? - PullRequest
0 голосов
/ 28 декабря 2011

Я могу подчеркнуть слово в поле редактирования текста, используя этот метод:

contentText.getEditableText().setSpan(new UnderlineSpan(), position, endLen, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

После того как я подчеркнул слово, есть ли какие-либо методы, которые могут дать мне знать, какое слово подчеркнуто? Это потому, что мне нужно знать, сколько слов и какое слово подчеркнуто. Заранее спасибо за ответ на мой вопрос.

Ответы [ 2 ]

3 голосов
/ 28 декабря 2011

Вы можете использовать getSpanEnd (тег объекта) и getSpanStart (тег объекта) для определения начала и конца диапазона. Единственное, вам нужно иметь ссылку на оригинальный объект UnderlineSpan.

Вот как бы я это сделал.

UnderlineSpan span = new UnderlineSpan();
contentText.getEditableText().setSpan(span, 0, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

Log.d("Span", "___Start___"+contentText.getEditableText().getSpanStart(span));
Log.d("Span", "___End___"+contentText.getEditableText().getSpanEnd(span));
2 голосов
/ 28 декабря 2011

После того как я подчеркнул слово, есть ли какие-либо методы, которые могут дать мне знать, какое слово подчеркнуто?

Вы уже знаете, какое слово подчеркнуто. Вы только что подчеркнули это. Используйте position и endLen, чтобы получить текст, который вы подчеркнули.

Хотя вы можете позвонить getSpans() позже, чтобы получить UnderlineSpan, UnderlineSpan не содержит информации о его положении.

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