同一textview中的不同文本颜色

时间:2013-07-12 07:05:24

标签: android textview textcolor

在我的应用程序中,我必须显示一些信息。我会像这样构建这些信息

Battery level //red textcolor 80% // black textcolor

有可能吗?因为现在我创建了两个分开的textview;一个用于“标题”,另一个用于具有不同颜色的信息。感谢

2 个答案:

答案 0 :(得分:2)

您可以使用Spannable来实现您的目标:

TextView textView = (TextView) findViewById(R.id.textView);
String text = "<font color='red'>Battery level</font> <font color='black'>80%</font>"
textView.setText(Html.fromHtml(text), TextView.BufferType.SPANNABLE);

答案 1 :(得分:1)

您可以使用SpannableString来解决您的问题。

您可以使用textviews

执行此操作
TextView tc_text = (TextView) findViewById(R.id.signup_TC_text);

SpannableString text = new SpannableString("Points are awarded when you confirm your email. By signing up, you agree to our Terms & Conditions.");

text.setSpan(new ForegroundColorSpan(Color.BLACK), 0, 80, 0);

final Context context = this;
ClickableSpan clickableSpan = new ClickableSpan() {
    @Override
    public void onClick(View view) {

        }
    };
    text.setSpan(clickableSpan, 80, 98, 0);

// make our ClickableSpans and URLSpans work
tc_text.setMovementMethod(LinkMovementMethod.getInstance());

// shove our styled text into the TextView
tc_text.setText(text, BufferType.SPANNABLE);

我在这里做的是,我已经计算了从哪里到哪里想要某种特定颜色的字符数。

希望这会对你有所帮助。