Android富文本存储格式,Android 富文本 Span 集合

Android 富文本

AbsoluteSizeSpan

改变富文本字体大小的span

例子

SpannableString string = new SpannableString("Text with absolute size span");

string.setSpan(new AbsoluteSizeSpan(55, true), 10, 23, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

复制代码

AlignmentSpan.Standard

文本对齐span

SpannableString string = new SpannableString("Text with opposite alignment");

string.setSpan(new AlignmentSpan.Standard(Layout.Alignment.ALIGN_OPPOSITE), 0,

string.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

复制代码

BackgroundColorSpan

文本背景span

SpannableString string = new SpannableString("Text with a background color span");

string.setSpan(new BackgroundColorSpan(color), 12, 28, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

复制代码

BulletSpan

样式span

ClickableSpan

文本点击span

DrawableMarginSpan

通过文本绘制 drawable

DynamicDrawableSpan

drawable 来取代文本

EasyEditSpan

简单编辑

ForegroundColorSpan

字体颜色

IconMarginSpan

段落影响范围,在文本的开头绘制位图。span还允许在位图和文本之间设置填充。填充的默认值是0px。跨度应该从文本的第一个字符开始。

ImageSpan

用一个可绘制项替换它所附加的文本,可绘制项可以与底部对齐,也可以与周围文本的基线对齐

LineBackgroundSpan.Standard

LeadingMarginSpan.Standard

LineHeightSpan.Standard

LocaleSpan

更改本地语言

MaskFilterSpan

MaskFilter设置为它附加的文字。

MetricAffectingSpan

改变字符宽度或高度的方式影响字符级文本格式。

QuoteSpan

文本的开头添加垂直条纹

RelativeSizeSpan

以一定比例均匀地缩放文本的大小

ReplacementSpan

ScaleXSpan

将文本的大小按一定的比例横向缩放。

StrikethroughSpan

文本中间添加一条线

StyleSpan

允许设置附加文本样式的Span

SpannableString string = new SpannableString("Bold and italic text");

string.setSpan(new StyleSpan(Typeface.BOLD), 0, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

string.setSpan(new StyleSpan(Typeface.ITALIC), 9, 15, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

复制代码

SubscriptSpan

将文本基线位置向下移动的span

SuggestionSpan

当在EditText中编辑这样一个span时,双击这个span中包含的文本将显示一个弹出对话框,其中列出了该文本的建议替换。然后用户可以用其中一个建议替换原始文本。这些范围通常应该由输入法创建,以便为文本提供纠正和替换。

SuperscriptSpan

将文本基线位置移动到更高位置的span

TabStopSpan.Standard

许从第一行文本的前边距设置偏移量

TextAppearanceSpan

使用给定的TextAppearance属性设置文本外观

TtsSpan

为用于文本到语音引擎的关联文本提供额外元数据的范围。如果文本正在由文本到语音的引擎处理,引擎可以使用此跨度中的数据作为与其相关的文本的补充或替代。TtsSpan的每个实例都有一个类型,例如类型DATE或类型MEASURE。以及参数列表,作为包中的键值对提供。内部类的存在是为了方便,并为每个TtsSpan类型提供构建器

TypefaceSpan

Span更新所附加文本的字体

Typeface myTypeface = Typeface.create(ResourcesCompat.getFont(context, R.font.acme),

Typeface.BOLD);

SpannableString string = new SpannableString("Text with typeface span.");

string.setSpan(new TypefaceSpan(myTypeface), 10, 18, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

string.setSpan(new TypefaceSpan("monospace"), 19, 22, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

复制代码

UnderlineSpan

底部加线

URLSpan

// URLSpan extends ClickableSpan

SpannableString string = new SpannableString("Text with a url span");

string.setSpan(new URLSpan("http://www.developer.android.com"), 12, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

复制代码

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值