TextView に緑色のフィードバック スターを表示する次のコードがあります。
Spanned sp = Html.fromHtml("<font color=\"#00dd00\">★</font>");
tv.setText(sp);
トピックのデバイスの横でテストしたすべてのデバイスで動作します。
理由がわかりません。
大きな問題は、デバイスが私のものではないことです。また、いつデバイスをテストに戻せるかわからないため、バグを再現できません。
もう 1 つの問題は、Android 4.4.4 でいくつかのエミュレーターをテストしましたが、問題が見つからなかったことです。
色付きのテキストをより安全な方法で表示する別の方法はありますか? もちろん、星は 5 であり、動的な方法 (グレーまたはグリーン) で色を付けることができます。それ以外の場合は問題ありません。
さらに詳しく説明すると、緑色の星が 2 つある場合、コードは次のようになります。
Spanned sp = Html.fromHtml("<font color=\"#00dd00\">★</font><font color=\"#00dd00\">★</font>");
tv.setText(sp);
<font color=\"#00dd00\">★</font>
が定数であるループで作成されるためです。
編集:
これは TextView の定義です
<TextView
android:id="@+id/txtThumbnail"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="20dp"
android:layout_marginRight="40dp"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
android:text=""
android:textSize="@dimen/elv_group_thumbnail_text_size"/>
" It does not work
" は、星は表示されているが緑色ではないことを意味するため、htmlcolor
タグの効果がないように見えます。