Зачем вам нужна следующая последовательность в манипулировании строками в Android, - PullRequest
0 голосов
/ 23 декабря 2011
EditExt name;
TextView result;
private void applyFormat() {
String format=getString(R.string.funky_format);
String simpleResult=String.format(format,TextUtils.htmlEncode(name.getText().toString()));
result.setText(Html.fromHtml(simpleResult));
}
}

У меня вопрос, почему сначала нужно использовать htmlEncode и сделать это Html.fromHtml. И что это значит, говоря, преобразовав экранированный сущностью HTML в Spanned объект через Html.fromHtml (). Что такое объект Spanned? definitionwise.

1 Ответ

2 голосов
/ 23 декабря 2011

У меня вопрос, почему сначала нужно использовать htmlEncode

Вам не нужно ничего делать.

Однако в этом примере любой HTML, введенный в EditText, будет отображаться в результате как исходный код HTML с использованием htmlEncode(). Если вы пропустите этот шаг, любой HTML, введенный в EditText, будет частью HTML, преобразованного в Spannable. IOW, если вы наберете <b>foo</b> в EditText, с htmlEncode(), вы увидите <b>foo</b> в выводе; без htmlEncode() вы видите foo .

Что на самом деле является Spanned объектом?

Это интерфейс Java. Цитирование документации :

Это интерфейс для текста, к которому привязаны объекты разметки.

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