3

カスタム評価バーを作成しようとしました。1回しか使っていないので使っていませんstylelayer-listそのため、フォルダーに を作成しましたdrawable(その名前はcustom_rating_bar.xml):

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  <item
    android:id="@android:id/background"
    android:drawable="@drawable/custom_icon_empty"/>
  <item
    android:id="@android:id/secondaryProgress"
    android:drawable="@drawable/custom_icon_empty"/>
  <item
    android:id="@android:id/progress"
    android:drawable="@drawable/custom_icon"/>
</layer-list>

そして、評価バーで次のコードを使用して、これらのアイコンを使用します。

android:progressDrawable="@drawable/custom_rating_bar"

私の画像サイズは標準(mdpiの場合は48x48など)で、小さなスタイルの評価バーを使用しています:

style="?android:attr/ratingBarStyleSmall"

問題は、style="?android:attr/ratingBarStyleSmall"一緒に使用android:progressDrawableできないことです(これを行うと、画像が表示されなくなります)。スタイル ( style="?android:attr/ratingBarStyleSmall") を削除すると、評価バーが大きくなりすぎます (画像が表示されます)。

この画像はそれがどれほど大きいかを示しています(画像間のマージンも大きすぎると思います): ここに画像の説明を入力

では、カスタム評価バーを小さくするにはどうすればよいでしょうか? (デフォルトの小さいスタイルの評価バーと同じくらい小さい)。

また、このカスタム評価バーは表示専用です(ユーザーが変更することはできません)。

ありがとう。

4

1 に答える 1

3

まず、android:id から「+」を削除します。style="?android:attr/progressBarStyleHorizontal"また、必要に応じて、xml にスタイルを追加することもできます。android:indeterminateDrawable="@drawable/custom_rating_bar"また、progressDrawableの代わりに使用する必要があるかもしれません

于 2013-01-10T05:03:50.087 に答える