Android SDK 1.1 r1
、RatingBar
ウィジェットクラスの星の画像を自分のものに変更する方法はありますか?これは可能ですか?もしそうなら、どのように?
ありがとう。
簡単に言えば、技術的には可能であるように見えます。最も簡単な方法は、RatingBarソースコードに基づいて独自のRatingBarを作成することです(よりエレガントな方法は、元のRatingBarを独自のものにextend
することです)。そこから、例として元のRatingBarソースxmlを使用して独自のRatingBarスタイルを作成する必要もあります(または元のRatingBarスタイルを継承および拡張します)。
ソースはdeveloper.Android.comでgitから入手できます。
OSの一貫したルックアンドフィールに反するため、独自の評価バーを作成することはお勧めできません。
1.1についてはよくわかりませんが、1.6以降では、Widget.RatingBar
スタイルを拡張して、スタードローアブル(values/styles.xml
内)を担当するプロパティをオーバーライドできます。
<style name="myRatingBar" parent="@Android:style/Widget.RatingBar">
<item name="Android:progressDrawable">@drawable/my_ratingbar_full</item>
<item name="Android:indeterminateDrawable">@drawable/my_ratingbar_full</item>
</style>
RatingBarをサブクラス化する必要はありません。このスタイルを、「style」属性を使用して渡すだけです。
<RatingBar style="@style/myRatingBar" ... />
Androidソースをダウンロードし、コアドローアブルフォルダーのratingbar_full.xmlを調べて、my_ratingbar_full
に何を入れるかを確認します。
あなたはここでこれのより完全なバージョンを見つけることができます: Androidでカスタム評価バーを作成する方法