寻星决 踏碎虚空破苍穹

今天我要玩TextView,那么TextView有啥好玩的呢?不就是一个渣渣基础控件么,setText搞定。But,作为开发一定遇到过一种情况,UI给了你一张图,上面有一行字,但是MMP的文字的颜色不一样。写两个Textview放上去?太慢了。So.

自己食用

SpannableString

这家伙和String差不多,可以用textview.setText(spannableString),这玩意有啥用呢,淡然是实现酷炫的效果啦。

setSpan

上面那个家伙的一个方法,有四个入参

一.Object what 酷炫的样式

二. int start 酷炫样式的起始位置

三. int end 酷炫样式的结束位置

四.int flags 恩...就是立一个flag,有四种属性

  • Spanned.SPAN_INCLUSIVE_EXCLUSIVE 从起始下标到终了下标,包括起始下标
  • Spanned.SPAN_INCLUSIVE_INCLUSIVE 从起始下标到终了下标,同时包括起始下标和终了下标
  • Spanned.SPAN_EXCLUSIVE_EXCLUSIVE 从起始下标到终了下标,但都不包括起始下标和终了下标
  • Spanned.SPAN_EXCLUSIVE_INCLUSIVE 从起始下标到终了下标,包括终了下标

特效DuangDuangDuang

  • ForegroundColorSpan 改变文字颜色
        SpannableString spannableString = new SpannableString("我可是要成为海贼王的男人");
        ForegroundColorSpan colorSpan = new ForegroundColorSpan(Color.parseColor("#333333"));
        spannableString.setSpan(colorSpan, 6, spannableString.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
        textView.setText(spannableString);
  • BackgroundColorSpan 背景色,用法同上
  • RelativeSizeSpan 文字大小
  • StrikethroughSpan 删除线
  • UnderlineSpan 下划线
  • SuperscriptSpan 上标™°
  • SubscriptSpan 下标
  • StyleSpan 文字变粗Typeface.BOLD,变斜Typeface.ITALIC
  • ImageSpan 文本图片
  • ClickableSpan 点击事件
  • URLSpan 超链接点击事件
  • SpannableStringBuilder 可以拼接SpannableString

Over. 想再看一遍钢炼。


寻星决 踏碎虚空破苍穹_第1张图片
你等着啊!

你可能感兴趣的:(寻星决 踏碎虚空破苍穹)