Возможно ли иметь TextView с разными цветами фона. Например. Если текст «Это тест», можно ли установить другой цвет фона для четырех слов?
Android - TextView с разными цветами фона
comment
Вы имеете в виду в том же TextView с разными цветами фона?
- person CodeCanyon   schedule 29.09.2014
comment
Вы можете привести пример того, что вы имеете в виду?
- person Amulya Khare   schedule 29.09.2014
comment
да. Это то, что я хочу сделать.
- person user2260040   schedule 29.09.2014
comment
У вас может быть 4 текстовых представления с разным фоном, каждое из которых содержит слово, и соединить их вместе...
- person nem035   schedule 29.09.2014
comment
Вот пример того, что я хочу сделать... tinypic.com/r/15oeyp3/8 В правой части изображения есть текст с разным фоном. Текст динамический, поэтому я не могу использовать фиксированное количество просмотров текста.
- person user2260040   schedule 29.09.2014
comment
Просто используйте SpannableString, как указано ниже.
- person Haresh Chhelana   schedule 29.09.2014
Ответы (1)
Да.
SpannableString spannableString = new SpannableString(getString(R.string.hello_world));
Object greenSpan = new BackgroundColorSpan(Color.GREEN);
Object redSpan = new BackgroundColorSpan(Color.RED);
spannableString.setSpan(greenSpan, 0, 6, 0);
spannableString.setSpan(redSpan, 6, spannableString.length(), 0);
TextView textView = (TextView) findViewById(R.id.text);
textView.setText(spannableString);
Производит:
РЕДАКТИРОВАТЬ: существует множество различных типов spannable, вы можете делать гораздо более красивые вещи, чем мой базовый пример. Ознакомьтесь с этой статьей.
person
Bradley Campbell
schedule
29.09.2014
Спасибо. Я попробую это позже.
- person user2260040; 29.09.2014