相信TextView是Android最常见的控件了,在日常使用中也有一些“心得”,这里记录一下。
格式化
有些时候需要在一个TextView上显示不同字体格式的内容,比如说一段黑色,一段灰色的内容,又或者字体一大一小的内容,要实现这样的效果有2种方式:
- 使用SpannableString
1
2
3SpannableString spanString = new SpannableString("Hello world!");
ForegroundColorSpan span = new ForegroundColorSpan(getResources().getColor(R.color.black));
spanString.setSpan(span, 0, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); - 使用Html format
1
2String text = "<font color='black'>Hello:</font>" + "world!";
content.setText(Html.fromHtml(text), TextView.BufferType.SPANNABLE);
两种方式都是可以的,但是第2种方式会导致TextView设置maxLines="3"、ellipsize="end"
的情况下,文本超过3行的时候不显示...
提示符了。所以在有...
的需求的时候建议还是使用第一种。