Форум программистов, компьютерный форум CyberForum.ru

Цветной текст в textview - Android

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.87
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
06.01.2014, 17:25     Цветной текст в textview #1
Вся фишка в том, чтобы установить текст не для строковой переменной, а для конкретной фразы. Т.е. к примеру фраза "Привет. Как дела?". Все хранится в одной переменной, но слово Привет - красными буквами(символами), Как - желтыми, дела - синими. Вот такая вот у меня наркомания
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2014, 17:25     Цветной текст в textview
Посмотрите здесь:

AutoScrolls TextView. Текст выводится не полностью Android
Изменять текст в TextView по таймеру каждые 5 минут Android
Android Текст из TextView перенести в другой TextView по нажатию Button
Android Получить текст из одного TextView в кастомном ListView
Android Как каждую секунду менять текст TextView?
В зависимости от позиции Spinner-а менять текст в TextView Android
Отображать в textView текст из файла txt Android
Как у TextView задать текст? Android
Нарисовать на канвасе цветной текст Android
Не изменяется текст в TextView Android
Android Spannable - цветной текст
Android Не получается вставить текст в TextView

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
 Аватар для YuraAAA
1563 / 1305 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
06.01.2014, 17:31     Цветной текст в textview #2
tolya1095, можно сделать либо с помощью Html.fromHtml, либо с помощью SpannableStringBuilder:

1.
Java
1
myTextView.setText(Html.fromHtml(text + "<font color=white>" + "your white text" + "</font><br><br>" + "some other text"));
2.
Java
1
2
3
4
5
6
7
8
final SpannableStringBuilder str = new SpannableStringBuilder(text);
str.setSpan(
    new ForegroundColorSpan(Color.BLUE), 
    wordStart, 
    wordEnd, 
    SpannableStringBuilder.SPAN_EXCLUSIVE_EXCLUSIVE
);
myTextView.setText(str);
делаем все слова "java" зелёными:

Java
1
2
3
4
5
6
7
8
9
10
11
final Pattern p = Pattern.compile("Java");
final Matcher matcher = p.matcher(text);
 
final SpannableStringBuilder spannable = new SpannableStringBuilder(text);
final ForegroundColorSpan span = new ForegroundColorSpan(Color.GREEN);
while (matcher.find()) {
    spannable.setSpan(
        span, matcher.start(), matcher.end(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
    );
}
myTextView.setText(spannable);
From
angryrobot
Командир зеленых роботов
 Аватар для angryrobot
346 / 283 / 53
Регистрация: 08.10.2013
Сообщений: 563
06.01.2014, 17:35     Цветной текст в textview #3
Если нужно что-то типа этого:
Цветной текст в textview

То вот код:
Java
1
2
3
4
5
6
7
8
9
10
public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        TextView txtView = new TextView(this);
        Spanned str = Html.fromHtml("<font color=\"red\">Привет.</font> <font color=\"yellow\">как </font> <font color=\"blue\">дела?</font>");
        txtView.setText(str);
        setContentView(txtView);
    }
}
Yandex
Объявления
06.01.2014, 17:35     Цветной текст в textview
Ответ Создать тему
Опции темы

Текущее время: 05:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru