0

Spanned String に色を付けようとしていますが、色が適用されません。同じ色が表示されます

テキストビューの色として。私が書いたコード。

TextView desc2=(TextView)listrow.findViewById(R.id.desc222);
desc2.setText(Html.fromHtml("<font color='#811c1d'><b>MyText</b></font>&nbsp;&nbsp;").toString());

「toString()」を削除すると、スローされます

04-24 06:20:58.750: E/AndroidRuntime(309): java.lang.StackOverflowError
04-24 06:20:58.750: E/AndroidRuntime(309):  at java.lang.reflect.Array.newInstance(Array.java:473)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.SpannableStringInternal.getSpans(SpannableStringInternal.java:243)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.Styled.drawUniformRun(Styled.java:61)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.Styled.drawDirectionalRun(Styled.java:298)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.Styled.drawText(Styled.java:357)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.Layout.drawText(Layout.java:1387)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.Layout.draw(Layout.java:370)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.text.BoringLayout.draw(BoringLayout.java:365)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.widget.TextView.onDraw(TextView.java:4050)
04-24 06:20:58.750: E/AndroidRuntime(309):  at android.view.View.draw(View.java:6740)

誰が問題が何であるか教えてもらえますか

4

2 に答える 2

1

これを試して:

TextView desc2=(TextView)listrow.findViewById(R.id.desc222);
desc2.setText(Html.fromHtml("<font color='#811c1d'><b>MyText</b></font>&nbsp;&nbsp;"));
于 2012-04-24T06:13:21.343 に答える
1

SpannableString を使用できます。

    SpannableString spanned = new SpannableString("MyText");
    ForegroundColorSpan fcs = new ForegroundColorSpan(yourColor);
    spanned.setSpan(fcs, 0, "MyText".length() - 1, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
    yourTextView.setText(spanned);
于 2013-02-08T23:11:12.357 に答える