Изменение поведения переноса строки

Я могу использовать Spannable в TextViews для создания интервалов с различным внешним видом, подчеркиванием, зачеркиванием и т.п. Как я могу сделать то же самое, чтобы изменить поведение переноса строк? В частности, я не хочу, чтобы адрес электронной почты переносился посередине, я хочу, чтобы он действовал как одно слово.

Я попробовал WrapTogetherSpan, но не смог заставить его работать. Похоже, он используется только DynamicLayout, и я не мог заставить TextView использовать DynamicLayout.


Как я устанавливаю spannable:

WrapTogetherSpan TOGETHER_SPAN = new WrapTogetherSpan() {};
String collectedString = getString(R.string.email_sentence, userEmail);
int emailOffset = collectedString.indexOf(userEmail);
Spannable emailSpannable = Spannable.Factory.getInstance()
    .newSpannable(collectedString);
emailSpannable.setSpan(TOGETHER_SPAN, emailOffset,
    emailOffset + userEmail.length(),
    Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
textView.setText(emailSpannable)

12
задан pforhan 14 May 2012 в 23:22
поделиться