其他分享
首页 > 其他分享> > android – 需要在TextView中居中对齐文本的单个部分

android – 需要在TextView中居中对齐文本的单个部分

作者:互联网

我目前正在使用SpannableString在单个TextView中格式化大块文本.尺寸和颜色格式很好,但我正在努力对齐.

我发现this post提供了格式化对齐的指导,以及关于如何使用AlignmentSpan的this Android Developer page,但它似乎对我没有用. Eclipse显示没有错误,应用程序加载/运行就好了,但是对齐部分似乎完全被忽略了.这是我的代码:

Spannable t = new SpannableString("Test Blue.");
t.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.color_blue)), 0, t.length()-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
t.setSpan(new AbsoluteSizeSpan((int) getResources().getDimension(R.dimen.big_text)), 0, t.length()-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
t.setSpan(new AlignmentSpan.Standard(Layout.Alignment.ALIGN_CENTER), 0, t.length()-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
text3.setText(t);

任何帮助将非常感激.

[编辑]我也试过评论颜色和大小setSpans,看看是否有冲突,但没有运气.

[编辑2]:我将下面的答案标记为正确,但正确的答案实际上埋没在评论中.我无法将TextView的XML文件宽度更新为match_parent(而不是fill_content).谢谢Serge!

解决方法:

也许你可以尝试这样做:

String t = "<center><font color=\"blue\">Test Blue.</font></center>";
text3.setText(Html.fromHtml(t)); 

标签:android,android-layout,alignment,spannablestring
来源: https://codeday.me/bug/20190624/1281536.html