こんにちは私はカスタム画像でカスタム評価バーを使用しています。星の間にスペースを設ける必要があります。最小の高さと最大の高さを増やしても、星の画像は同じままです。
<RelativeLayout
Android:id="@+id/RelativeLayout01"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_margin="10dp"
Android:padding="5dp">
<TextView
Android:id="@+id/allreviews"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentLeft="true"
Android:text="Rating"
Android:layout_marginLeft="8dp"
Android:textSize="14sp" />
<RatingBar
Android:id="@+id/reviewallrating"
style="@style/customRatingBar"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="10dp"
Android:layout_marginTop="3dp"
Android:layout_toRightOf="@+id/allreviews"
Android:isIndicator="false"
Android:numStars="5"
Android:stepSize="0.1" />
</RelativeLayout>
スタイル:@ drawable/star_rating_bar_full 12dip 12dip
star_rating_bar_full.xml:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:Android="http://schemas.Android.com/apk/res/Android">
<item Android:id="@+Android:id/background"
Android:drawable="@drawable/star_ratingbar_full_empty" />
<!-- <item Android:id="@+Android:id/secondaryProgress"
Android:drawable="@drawable/star_ratingbar_full_empty" /> -->
<item Android:id="@+Android:id/progress"
Android:drawable="@drawable/star_ratingbar_full_filled" />
</layer-list>
star_ratingbar_full_empty:
<?xml version="1.0" encoding="utf-8"?>
<!-- This is the rating bar drawable that is used to
show a filled cookie. -->
<selector
xmlns:Android="http://schemas.Android.com/apk/res/Android">
<item Android:state_pressed="true"
Android:state_window_focused="true"
Android:drawable="@drawable/star_gray" />
<item Android:state_focused="true"
Android:state_window_focused="true"
Android:drawable="@drawable/star_gray" />
<item Android:state_selected="true"
Android:state_window_focused="true"
Android:drawable="@drawable/star_gray"/>
<item Android:drawable="@drawable/star_gray" />
</selector>
star_ratingbar_fullfilled.xml:
<item Android:state_pressed="true"
Android:state_window_focused="true"
Android:drawable="@drawable/yellow_star" />
<item Android:state_focused="true"
Android:state_window_focused="true"
Android:drawable="@drawable/yellow_star" />
<item Android:state_selected="true"
Android:state_window_focused="true"
Android:drawable="@drawable/yellow_star" />
<item Android:drawable="@drawable/yellow_star" />
スタイルでstyle = "?android:attr/ratingBarStyle"を使用しましたが出力は同じままです。
PNGの左側と右側に空のスペースを追加するだけです。
つまり、GIMP(または使用するグラフィックエディタプログラム)の灰色と黄色のPNGの幅を広げます。
星のアイコンを引き伸ばさずに、キャンバスだけ。
星にDrawableを使用している場合。 png画像の要件に応じて、ドローアブルに左パディングがあることを確認してください。
それ以外の場合、コードを介して機能しません。数日前、私は同じ問題に悩まされていました。左のパディング画像を使用して確認しました。それがうまくいくことを願っています。