2015-02-24 1 views
0

У меня возникли проблемы с установкой StyleSpan и ForegroundColorSpan в одной строке. Вот мой код:Несколько пролетов в одной строке

SpannableStringBuilder text_1_2 = new SpannableStringBuilder(getString(R.string.why_text_1_2)); 

StyleSpan bss = new StyleSpan(android.graphics.Typeface.BOLD); 
ForegroundColorSpan fcs = new ForegroundColorSpan(getResources().getColor(R.color.custom_blue)); 

text_1_2.setSpan(fcs, 0 , text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); 
text_1_2.setSpan(bss, 0, text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); 

Полученная строка имеет синий цвет, но не выделена жирным шрифтом.

Спасибо.

+0

Можем ли мы возжелали вывод строки ?? – MilapTank

ответ

4

Вы можете попробовать это

text_1_2.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 0 , text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); 
text_1_2.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.custom_blue)), 0, text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); 

Но моя рекомендация, если вы не хотите, чтобы стиль часть строки применить стиль и цвет, используя

android:textColor="@color/color_name" 
android:textStyle="bold" 
+0

Спасибо, что работает! – Tofasio

+0

Проблема заключается в использовании трех разных стилей для одного текста, и я использую 'TextUtils.concat()' для трех разных строк. Первый код, который вы положили, работает для меня. Спасибо за редактирование ответа. – Tofasio

+0

отлично .. тогда 1-й вариант должен быть в порядке – Fahim