TextView设置 多种颜色,封装好的工具类
2016-07-25 11:18
274 查看
今天 项目中遇到,textview 设置两种,多种 颜色,用到的还很多,所以呢,就自己 封装了个 工具类,希望对大家 有帮助,直接上代码:
/** * textview设置2种颜色 */ public static void textViewShowTwoColor(TextView textView, String oneStr, String twoStr, String oneColor, String twoColor) { String focus_content = oneStr + twoStr;
SpannableStringBuilder builder = new SpannableStringBuilder(focus_content.toString()); ForegroundColorSpan redSpan = new ForegroundColorSpan( Color.parseColor(oneColor)); ForegroundColorSpan whiteSpan = new ForegroundColorSpan(Color.parseColor(twoColor)); builder.setSpan(redSpan, 0, oneStr.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); builder.setSpan(whiteSpan, oneStr.length(), focus_content.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); textView.setText(builder); }
/*** textview设置3种颜色*/public static void textViewShowTwoColor(TextView textView, String oneStr,String twoStr,String threeStr, String oneColor, String twoColor,String threeColor) {// mholder.item_mfocus_content.setText();String focus_content = oneStr + twoStr+threeStr;SpannableStringBuilder builder = new SpannableStringBuilder(focus_content.toString());// ForegroundColorSpan 为文字前景色,BackgroundColorSpan为文字背景色// ForegroundColorSpan redSpan = new ForegroundColorSpan(oneColor);// ForegroundColorSpan whiteSpan = new ForegroundColorSpan(twoColor);ForegroundColorSpan redSpan = new ForegroundColorSpan(Color.parseColor(oneColor));ForegroundColorSpan whiteSpan = new ForegroundColorSpan(Color.parseColor(twoColor));ForegroundColorSpan threeSapn = new ForegroundColorSpan(Color.parseColor(threeColor));builder.setSpan(redSpan, 0, oneStr.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);builder.setSpan(whiteSpan, oneStr.length(), oneStr.length()+twoStr.length(),Spannable.SPAN_INCLUSIVE_INCLUSIVE);builder.setSpan(threeSapn, oneStr.length()+twoStr.length(), focus_content.length(),Spannable.SPAN_INCLUSIVE_INCLUSIVE);textView.setText(builder);}
其他的有需要,可以 根据我上面的改动
相关文章推荐
- 通过JS自动隐藏手机浏览器的地址栏
- [JQ权威指南]JQ遍历JSON数据
- (转)ReentrantLock与Synchronized同步区别
- kafak 命令使用
- 各种细的知识点(一)
- 为什么无线信号(RSSI)是负值
- 如何修改ubuntu的用户名和主机名称
- devmem调试内核驱动
- mysql中各个模块如何协同工作
- 炒鸡好用的自动轮播的ViewPager
- 短信验证码注册
- Android简易画板:
- iOS Core Data 数据迁移 指南
- 动态规划 III——B - Apple Catching
- [Leetcode]54. Spiral Matrix
- 推荐一个轻量级缓存框架——ACache(ASimpleCache)
- 几个Linux命令
- 用memest(),memcpy()初始化数组
- Javascript的比较汇总
- Hybris Mode