首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >textview上的颜色和样式操作

textview上的颜色和样式操作
EN

Stack Overflow用户
提问于 2011-07-03 18:02:15
回答 2查看 3.5K关注 0票数 2

好的,假设我们有这样的文本

代码语言:javascript
运行
复制
String s="123 45678 91011122314 1516";

现在我的问题是我想这么说

代码语言:javascript
运行
复制
textview.setText(stylemystring(s));

我希望'123‘是红色的粗体,45678是斜体和蓝色,依此类推

我发现这是相当的问题,当样式这些东西,有与htmlformat的解决方案,但事情是,文本的大小,应该是红色或蓝色是动态的,所以我需要更灵活的东西。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-03 19:40:56

像这样的东西应该是有效的:

代码语言:javascript
运行
复制
    SpannableStringBuilder text = new SpannableStringBuilder("123 45678 91011122314 1516");
    text.setSpan(new ForegroundColorSpan(Color.RED), 0, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    text.setSpan(new ForegroundColorSpan(Color.BLUE), 4, 9, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
    text.setSpan(new StyleSpan(Typeface.BOLD), 4, 9, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
    textView.setText(text, TextView.BufferType.SPANNABLE);

您可以将不同的样式添加到字符串的不同部分。基于http://developer.android.com/resources/faq/commontasks.html#selectingtext

票数 11
EN

Stack Overflow用户

发布于 2011-07-03 18:05:06

我认为你必须把它分成不同的字符串来实现。

看一看this link

我想它有你要找的东西。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6562217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档