0

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

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

可能吗?因为现在我已经创建了两个单独的文本视图;一个用于“标题”,另一个用于不同颜色的信息。谢谢

4

2 回答 2

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);
于 2013-07-12T07:09:50.847 回答
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);

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

希望这会帮助你。

于 2013-07-12T07:52:57.357 回答