TextView的@string中的字体宽度不同

时间:2014-05-04 22:29:08

标签: android textview typography android-fonts android-typeface

我有字符串<string name="getStarted">Get Started!</string>

我已将其文本视图设置为android:fontFamily="sans-serif-light"

我可以将Started!作为常规fontFamily,其中字符串的其余部分(Get)重量轻吗?

我试过了: <string name="getStarted">Get <n>Started!</n></string>就像<b></b>一样,但是...... n不是标记(正常情况下为n)。

2 个答案:

答案 0 :(得分:1)

final SpannableStringBuilder sb = new SpannableStringBuilder("Get Started!");  
final StyleSpan bss = new StyleSpan(android.graphics.Typeface.BOLD); // Span to make text bold  
sb.setSpan(bss, 4, 11, Spannable.SPAN_INCLUSIVE_INCLUSIVE); // make them also bold 
yourTextView.setText(sb); 

答案 1 :(得分:0)

为了保持一致性,基于@ Gavin2058的回答。

SpannableString sb = new SpannableString("Get Started!");
sb.setSpan(new TypefaceSpan("sans-serif"), 4, 11, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
yourTextView.setText(sb); 
如果您有一个包含多个宽度字词的大字符串,

SPAN_EXCLUSIVE_INCLUSIVE可以帮助您添加更多setSpan相同的样式。