Android RatingBar可以';t集额定值
我试图在我的Android应用程序中实现一个分级栏,但在设置分级时遇到了一些问题。“我的酒吧”始终显示为具有最大可用评级。以下是我的档案: styles.xmlAndroid RatingBar可以';t集额定值,android,android-layout,layout,ratingbar,Android,Android Layout,Layout,Ratingbar,我试图在我的Android应用程序中实现一个分级栏,但在设置分级时遇到了一些问题。“我的酒吧”始终显示为具有最大可用评级。以下是我的档案: styles.xml <style name="ratingBarStyling" parent="@android:style/Widget.RatingBar"> <item name="android:progressDrawable">@drawable/star_rating_bar</item>
<style name="ratingBarStyling" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/star_rating_bar</item>
<item name="android:indeterminateDrawable">@drawable/star_rating_bar</item>
<item name="android:minHeight">25dip</item>
<item name="android:maxHeight">27dip</item>
</style>
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/background"
android:drawable="@drawable/star_rating_bar_full_empty" />
<item android:id="@+id/secondaryProgress"
android:drawable="@drawable/star_rating_bar_full_empty" />
<item android:id="@+id/progress"
android:drawable="@drawable/star_rating_bar_full_filled" />
</layer-list>
@可拉拔/星形额定值杆
@可拉拔/星形额定值杆
25度
27dip
(与v21相同)
star\u rating\u bar.xml
<style name="ratingBarStyling" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/star_rating_bar</item>
<item name="android:indeterminateDrawable">@drawable/star_rating_bar</item>
<item name="android:minHeight">25dip</item>
<item name="android:maxHeight">27dip</item>
</style>
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/background"
android:drawable="@drawable/star_rating_bar_full_empty" />
<item android:id="@+id/secondaryProgress"
android:drawable="@drawable/star_rating_bar_full_empty" />
<item android:id="@+id/progress"
android:drawable="@drawable/star_rating_bar_full_filled" />
</layer-list>
星级评定栏满空
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_star_empty" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_star_empty" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_star_empty" />
<item android:drawable="@drawable/ic_star_empty" />
</selector>
星级评定栏满
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_star" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_star" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_star" />
<item android:drawable="@drawable/ic_star" />
</selector>
最后,在片段布局上实现分级栏:
<RatingBar
style="@style/ratingBarStyling"
android:id="@+id/venue_card_rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="20dp"
android:numStars="5"
android:stepSize="1.0"
android:rating="2.0"/>
现在由于某种原因,我可以看到填充的星形图标,但没有看到空的。我也尝试过以编程方式设置它,但结果是一样的。任何帮助都将不胜感激
这就是我经常听到的:你犯了一个小错误/打字错误 您将不得不使用android:id,而不是提供新的id
<?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_rating_bar_full_empty" />
<item android:id="@android:id/secondaryProgress"
android:drawable="@drawable/star_rating_bar_full_empty" />
<item android:id="@android:id/progress"
android:drawable="@drawable/star_rating_bar_full_filled" />
</layer-list>