Android TextView的各种Span

首先Span是什么
Span是功能强大的标记对象,可用于在字符或段落级别的文本设置样式。我们可以将该标记对象添加到文本上,从而可以改变文本的颜色,使文本可点击,缩放文本大小等等。

创建Span
创建一个Span,可以使用以下三个类
SpannedString  使用该类创建的Span对象不可以改变文本,不可以改变标记。很少使用到。
SpannableString  使用该类创建的Span对象不可改变文本,可以改变标记,一般在不修改文本内容,只修改文本标记的情况下(比如修改文本的颜色等)应该使用该类。
SpannableStringBuilder  使用该类创建的Span对象可以改变文本,可以改变标记,一般在要修改文本内容时使用,如果需要将大量的Span附加到文本上,那不管是否修改文本,都应该使用该类。

应用Span
如果需要应用Span,需要对Spannable对象调用setSpan(Object _what_, int _start_, int _end_, int _flags_)。参数what代表要应用于文本的Span,start和end表示要应用该Span的文本位置(前包括后不包括,要对整个文本应用Span,start为0,end为文本长度)
在应用Span后,如果在Span边界内插入文本,则Span会自动扩展已插入的文本,如果在Span的边界上(即在start或end索引处)插入文本时。flags参数表示是否应该将Span扩展到插入的文本上。
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE 标志表示会排除插入的文本

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值