同一个TextView,不同颜色,不同字体大小设置
2016-12-06 09:19
567 查看
开发中经常会遇到同一个TextView需要显示不同颜色,不同字体大小的文字。
通过SpannableStringBuilder可以很容易的实现这两个功能。
以下是一个自定义的SpannableUtils
通过SpannableStringBuilder可以很容易的实现这两个功能。
以下是一个自定义的SpannableUtils
public class SpannableUtils { static SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(); public static SpannableStringBuilder showDiffColor(String str, int start,int end) { if (spannableStringBuilder.length() > 0) { spannableStringBuilder.clear(); } spannableStringBuilder.append(str); spannableStringBuilder.setSpan(new ForegroundColorSpan(Color.parseColor("#427fed")), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); return spannableStringBuilder; } public static SpannableStringBuilder showDiffSize(String str, int start, int end, int size) { if (spannableStringBuilder.length() > 0) { spannableStringBuilder.clear(); } spannableStringBuilder.append(str); spannableStringBuilder.setSpan(new AbsoluteSizeSpan(size), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); return spannableStringBuilder; } }
使用如下
tv1.setText(SpannableUtils.showDiffColor("测试不同颜色",1,3)); //由于AbsoluteSizeSpan的size是像素,因为在使用时,需要将sp转为px tv2.setText(SpannableUtils.showDiffSize("测试不同size", 1, 3, DeviceUtils.dip2px(this, 25))); tv3.setText("正常显示");
效果图如下
相关文章推荐
- android 一个 textview 设置不同的字体大小和颜色
- android 一个 textview 设置不同的字体大小和颜色
- android 一个 textview 设置不同的字体大小和颜色
- Android 一个TextView中设置文字不同字体大小和颜色的最完整方法
- android 一个 textview 设置不同的字体大小和颜色
- android 一个 textview 设置不同的字体大小和颜色
- TextView设置不同的字体颜色大小的方法
- 同一个TextView中设置不同颜色与文字大小
- 关于特殊字体,字体文件及一个TextView中不同字体大小和颜色的处理
- 同一个TextView设置不同的颜色和大小
- Android中的一个TextView中的字体设置不同大小
- 一个textView中显示两种不同的字体(颜色,大小)
- Android中的一个TextView中的字体设置不同大小
- Android textview 设置不同的字体大小和颜色
- [转]Android中的一个TextView中的字体设置不同大小
- 一个TextView 设置两种字体颜色和大小
- 关于一个Textview内的文字设置不同大小和颜色
- 为TextView设置不同的字体大小和颜色
- 一个TextView设置不同大小字体、EditText显示两行不同样式hint
- 一个TextView 设置两种字体颜色和大小