首先,你的build.gradle里面要依赖
dependencies {
compile 'com.android.support:appcompat-v7:X.X.X' // where X.X.X version
}
然后让你的activity继承于Android.support.v7.app.AppCompatActivity
public class MainActivity extends AppCompatActivity {
...
}
在style.xml里面声明如下属性
<style name="RatingBar" parent="Theme.AppCompat">
<item name="colorControlNormal">@color/blue</item>
<item name="colorControlActivated">@color/red_warn</item>
</style>
colorControlNormal代表未选中时的颜色,colorControlActivated代表选中时的颜色
然后在activity的xml中的ratingbar的控件里写如下代码
<android.support.v7.widget.AppCompatRatingBar
android:id="@+id/rating_bar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?attr/ratingBarStyleIndicator"
android:isIndicator="false"
android:theme="@style/RatingBar"
/>
这样,用系统的ratingbar就不会出现部分机型有一部分星星被遮挡了出不来的问题,而且还可以自己设定 ratingbar的颜色
**
更新
**!第二种方法!如下代码也可以修改ratingbar的颜色
<android.support.v7.widget.AppCompatRatingBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/rb"
android:stepSize="1"
android:rating="5"
style="?attr/ratingBarStyle"
android:layout_marginTop="10dip"
android:progressTint="@color/orange_main_color"
android:progressBackgroundTint="@color/app_main_gray_bg"
android:secondaryProgressTint="@color/app_main_gray_bg"
/>
如何调整ratingbar中星星的大小