SpannableStringBuilder 笔记

SpannableStringBuilder 笔记

在学习富文本的过程中发现了这个知识点。SpannableStringBuilder实现了CharSequence接口,用法类似StringBuilder。可以为其包含的字符串设置样式。在设计自定义Label时会很实用。

需要注意的是,虽然其可以直接作为参数放入TextView中,不过由于Canvas并不适配这个类,所以在其中使用这个类等同于使用普通的字符串。

关键方法

  1. void setSpan(Object what, int start, int end, int flags)

  2. SpannableStringBuilder append(CharSequence text, Object what, int flags)

实际上两个方法类似,都需要一个参数whatflags。方法1的剩余参数分别为需要设置的字符起点、终点。这没啥好说的,跟substring的那两个参数一样。方法2就不必说了,现在说说共有的两个参数

what是一个Span类型的参数,用于确定现在的样式。是整个方法的关键。flags参数用于确定样式的作用范围。该参数需求以下四个常量值:

  • Spannable.SPAN_EXCLUSIVE_EXCLUSIVE:仅仅作用于当前选中范围内insert()的字符串
  • Spannable.SPAN_EXCLUSIVE_
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值