TextView常用的几种方式:局部字体样式(二)
来源:互联网 发布:xshell for mac 编辑:程序博客网 时间:2024/05/21 06:33
前言:
以前写过关于TextView的相关内容,但是觉得没有把他们给整理出来,有点凌乱,所以在这里再次花时间把TextView常用的几种方式再次整理出来让大家参考!
功能:
在上一篇TextView的常用的几种方式:占位符(一)中简单介绍了android占位符的使用方法,在这篇文章中我们再来学习一下TextView局部样式的设置方法,来完善类似京东套装价或好评度这样同一个TextView中部分字符串为动态数据并且修改字体颜色的情况:
实现原理:
本文修改样式的原理参考:http://blog.csdn.net/harvic880925/article/details/38984705
实现方法:
- 添加TextView控件:
- 添加字符串资源,并为TextView设置字符串资源
- 在activity中获取字符串资源的字符串对象
- 获取动态数据,并格式化字符串对象,并为其设置占位符的动态值
- 先构造SpannableString
- 再构造一个改变字体颜色的Span
- 将这个Span应用于指定范围的字体:由于字符串长度不定可以根据动态数据的长度进行计算
- 设置给TextView显示出来
核心代码://3,在activity中获取字符串资源的字符串对象String strPrice = getResources().getString(R.string.price);//4,获取动态数据String price = "1999.8";//格式化字符串对象,并为其设置占位符的动态值strPrice = String.format(strPrice,price);//5,先构造SpannableStringSpannableString spanString = new SpannableString(strPrice);//6,再构造一个改变字体颜色的SpanForegroundColorSpan span = new ForegroundColorSpan(Color.RED);//7,将这个Span应用于指定范围的字体:由于字符串长度不定可以根据动态数据的长度进行计算spanString.setSpan(span, 4, (4 + price.length()), Spannable.SPAN_EXCLUSIVE_INCLUSIVE);//8,设置给TextView显示出来tv_price.setText(spanString);
项目展示:
项目地址:
https://github.com/Winfred1989/DemoTextView
0 0
- TextView常用的几种方式:局部字体样式(二)
- TextView常用的几种方式:占位符(一)
- TextView常用的几种方式:跑马灯(三)
- (android实战)实现【关于我们】功能(textview的文本样式几种实现方式)
- TextView样式多样化(字体的大小和颜色)
- TextView局部文字样式美化(SpannableStringBuilder)
- textView的常用字体设置
- Android TextView 丰富多彩的字体样式代码
- Android TextView丰富多彩的字体样式代码
- Android TextView丰富多彩的字体样式代码
- Android TextView丰富多彩的字体样式代码
- Android TextView丰富多彩的字体样式代码
- android TextView 丰富多彩的字体样式代码
- Android TextView丰富多彩的字体样式代码
- Android TextView 丰富多彩的字体样式代码
- Android TextView丰富多彩的字体样式代码
- Android TextView 丰富多彩的字体样式代码
- Android TextView 丰富多彩的字体样式代码
- Single Number问题及解法
- CentOS6.0 下配置Tomcat7.0
- {LeetCode} 457. Circular Array Loop
- Lucene:基于Java的全文检索引擎简介
- Android Studio混淆模板及常用第三方混淆(看了都说好)
- TextView常用的几种方式:局部字体样式(二)
- Mybatis开发流程
- 【abap】查看生产订单
- Django-web development creation
- 人工智能如何模拟动物大脑实现连续学习
- kettle步骤概览(5)--清洗校验
- IT名企常见面试题总结之操作系统篇(一)
- 大龄程序员的未来在何方
- 欢迎使用CSDN-markdown编辑器