【问题标题】:Color and style manipulation on textviewtextview 上的颜色和样式操作
【发布时间】:2011-09-27 13:55:15
【问题描述】:

好吧,想象一下我们有这样的文字

String s="123 45678 91011122314 1516";

现在我的问题是我想说

textview.setText(stylemystring(s));

我希望“123”是粗体和红色,45678 是斜体和蓝色,等等

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

谢谢

【问题讨论】:

    标签: android string colors coding-style textview


    【解决方案1】:

    这样的事情应该可以工作:

        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

    【讨论】:

      【解决方案2】:

      我认为您必须将其拆分为不同的字符串才能实现这一点。

      看看this link

      我认为它有你要找的东西。

      【讨论】:

        猜你喜欢
        • 2016-08-05
        • 2023-03-18
        • 1970-01-01
        • 2015-02-25
        • 2020-05-04
        • 1970-01-01
        • 2013-02-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多