Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.94/17: Рейтинг темы: голосов - 17, средняя оценка - 4.94
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
#1

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

06.01.2014, 17:25. Просмотров 3067. Ответов 2
Метки нет (Все метки)

Вся фишка в том, чтобы установить текст не для строковой переменной, а для конкретной фразы. Т.е. к примеру фраза "Привет. Как дела?". Все хранится в одной переменной, но слово Привет - красными буквами(символами), Как - желтыми, дела - синими. Вот такая вот у меня наркомания
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2014, 17:25
Ответы с готовыми решениями:

Текст из TextView перенести в другой TextView по нажатию Button
Люди, помогите плиз. Недавно начал ковырять программирование под Android. Хотел...

Spannable - цветной текст
Всем добра Работая с Spannable наткнулся на одну проблему. В приложении...

Нарисовать на канвасе цветной текст
Подскажите, может кто сталкивался... Решил начать писать свою реалицию...

Не изменяется текст в TextView
...А возможно беда в чем - то другом Собственно простецкая программа. Не могу...

Как у TextView задать текст?
как у TextView задать текст? я так понимаю методом setText? (кстати а что в...

2
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
06.01.2014, 17:31 #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
1
angryrobot
Командир зеленых роботов
348 / 285 / 54
Регистрация: 08.10.2013
Сообщений: 565
06.01.2014, 17:35 #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);
    }
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.01.2014, 17:35

Как отформатировать текст в TextView
Как добавить в один textview текст, по-разному его отформатировав?...

Не получается вставить текст в TextView
Создаю список из БД, при этом пытаюсь найти TextView в другом Layout...

Как программно изменить текст в TextView
Как из MainNavigationActivity изменить текст в шапке меню? Там где текст...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru