当我为Android RatingBar使用自定义星标时,总是显示半星值低于0.5的半星

当我为Android RatingBar使用自定义星标时,总是显示半星值低于0.5的半星,第1张

概述为了改变RatingBar中星星的颜色,我查阅了一些帖子(例如AndroidRatingBarchangestarcolors,Changethecolorofthestarsintheratingbarwheretheratingbariscreateddynamicallyinandroid,HowcanIsetthestarcoloroftheratingbar?).我跟踪帖子并且能够更

为了改变ratingbar中星星的颜色,我查阅了一些帖子(例如Android RatingBar change star colors,Change the color of the stars in the rating bar where the rating bar is created dynamically in android,How can I set the star color of the ratingbar?).我跟踪帖子并且能够更改自定义ratingbar的星星,但是在这样做时我不再能够将值设置为小于一半的小数(例如0.2).它总是显示为一半(例如0.5).当我将值设置为高于一半(例如0.7)时,它会完美显示.

以下是我用于自定义ratingbar的示例图像(即ratingbar_empty.png,ratingbar_half.png,ratingbar_full.png)

以下是使用自定义星标的xml(ratingbar_custom.xml).

<?xml version="1.0" enCoding="UTF-8"?><@R_818_3419@ xmlns:androID="http://schemas.androID.com/apk/res/androID">    <item androID:ID="@androID:ID/background" androID:drawable="@drawable/ratingbar_empty" />    <item androID:ID="@androID:ID/secondaryProgress" androID:drawable="@drawable/ratingbar_half" />    <item androID:ID="@androID:ID/progress" androID:drawable="@drawable/ratingbar_full" /></@R_818_3419@>'

以下是我在布局中如何使用自定义ratingbar.

<ratingbar     androID:ID="@+ID/rb_rating"    androID:numStars="7"    androID:rating="0"          androID:stepSize="0.01"                         androID:isIndicator="true"                                                                androID:layout_wIDth="fill_parent"    androID:layout_height="wrap_content"    androID:gravity="center"    androID:progressDrawable="@drawable/ratingbar_custom" />

当我把它们放在一起并将ratingbar的值设置为0.2时,它会将ratingbar视觉设置为0.5,如下所示.有没有人知道为什么会发生这种情况或者我做错了什么?任何帮助将不胜感激.谢谢

解决方法:

你不需要star_half.

尝试这样做:

<?xml version="1.0" enCoding="utf-8"?><@R_818_3419@ xmlns:androID="http://schemas.androID.com/apk/res/androID">    <item androID:ID="@androID:ID/background" androID:drawable="@drawable/star_none" />    <item androID:ID="@androID:ID/secondaryProgress" androID:drawable="@drawable/star_none" />    <item androID:ID="@androID:ID/progress" androID:drawable="@drawable/star_fill" /></@R_818_3419@>
总结

以上是内存溢出为你收集整理的当我为Android RatingBar使用自定义星标时,总是显示半星值低于0.5的半星全部内容,希望文章能够帮你解决当我为Android RatingBar使用自定义星标时,总是显示半星值低于0.5的半星所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1097941.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存