繁体   English   中英

Android RatingBar - 四分之一星级步长

[英]Android RatingBar - quarter star step size

我正在使用默认评级栏并且需要一个.25的stepSize - 根据文档,这应该是将xml属性android:stepSize0.25的简单问题。

目前,这已经到位,总xml为:

<RatingBar 
        android:id="@+id/ratingbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        style="@style/RatingBarBig"
        android:layout_below="@+id/score"
        android:layout_centerHorizontal="true"
        android:gravity="center_horizontal"
        android:paddingBottom="5dp"
        android:layout_centerVertical="true"
        android:isIndicator="true"
        android:stepSize="0.25"
        android:numStars="5"
        android:rating="0"/>

我使用以下代码以编程方式使用3.25的浮点填充评级栏:

float rating = 3.25f;
RatingBar mRating = (RatingBar) findViewById(R.id.ratingbar);
mRating.setRating(rating);

所以,问题是评级栏本身正在填充显示3.5而不是3.25 我甚Log.drating浮点数和mRating.getRating的输出上设置了Log.d通知

有人有什么想法吗?

啊 - 所以经过2天试图解决这个问题后,我终于问了问,会发生什么? 我十分钟后想出来......

问题出在我的抽签中。

我忘了提到的是,我正在使用第二个RatingBar,覆盖在第一个上面(只有空透明的星星),因为我在主要的一个上使用滤色器以改变颜色根据评级(红色,黄色,绿色)的星星。

发生的事情是我用于主要RatingBar的drawable需要使用与覆盖完全相同的 - 而不是我使用的那些是我之前的主题留下的......

所以,这一切都归结为使用的图像,而不是代码。 一旦我被允许,我会接受这个作为正确的答案。

尝试以编程方式设置步长:

mRating.setStepSize((float) 0.25);

mRating.setRating(rating);之前调用它mRating.setRating(rating);

看看这是否有效

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM