gpt4 book ai didi

java - RatingBar 不显示准确的评分

转载 作者:行者123 更新时间:2023-11-30 02:22:04 26 4
gpt4 key购买 nike

我已将 RatingBar 添加到我的 ListView 的每个项目中。它运行良好,但不显示准确评级。例如,如果评级是 4.3,它必须显示第 5 颗星的一部分,但它没有

截图:

  • 第一项评分 = 4.3
  • 第二项的评分 = 4.5

My current ListView

您知道问题出在哪里吗?

我很乐意提供任何帮助或建议。

ratingsbar.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/ic_action_star_rate1" />
<item android:id="@+android:id/secondaryProgress"
android:drawable="@drawable/ic_action_star_rate1" />
<item android:id="@+android:id/progress"
android:drawable="@drawable/ic_action_star_rate" />
</layer-list>

我适配器中 getView() 中的方法

if(clubs.getInt("clubRating")!= 0){
holder.rating.setRating((float) (clubs.getInt("clubRating")));
}else{
holder.rating.setRating(0);
}

项目布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="220dp"
android:minHeight="220dp"
android:background="@drawable/club_item"
android:id="@+id/clubAll" >


<ImageView
android:id="@+id/club_poster"
android:layout_width="match_parent"
android:layout_height="220dp"
android:src="@drawable/placeholder"
android:scaleType="centerCrop" />

<ImageView
android:id="@+id/club_vip_small"
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="fitXY"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
/>


<TextView
android:id="@+id/club_events_true"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:padding="2dp"
android:textSize="13sp"
android:textColor="#FFFFFF"
android:gravity="center_vertical"
android:paddingRight="7dp"
android:text="@string/events_true"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:background="#00C659"
android:drawableLeft="@drawable/eventsup" />


<TextView
android:id="@+id/club_discounts_true"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:padding="2dp"
android:paddingRight="7dp"
android:textSize="13sp"
android:gravity="center_vertical"
android:textColor="#FFFFFF"
android:text="@string/discounts_true"
android:layout_alignParentLeft="true"
android:layout_below="@id/club_events_true"
android:background="#F6D100"
android:drawableLeft="@drawable/golden_discount" />


<RelativeLayout
android:layout_width="match_parent"
android:layout_height="90dp"
android:minHeight="75dp"
android:layout_alignParentBottom="true"
android:background="#FFFFFF"
android:id="@+id/club_head_info" >


<com.example.android.ImageViewRounded
android:id="@+id/club_club_logo"
android:layout_width="60dp"
android:layout_height="60dp"
android:src="@drawable/placeholder_club"
android:scaleType="fitXY"
android:layout_marginLeft="5dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true" />


<com.example.android.AutofitTextView
android:id="@+id/club_distance_small"
android:layout_width="57dp"
android:layout_height="57dp"
android:background="@drawable/meters_back"
android:layout_marginLeft="5dp"
android:gravity="center"
android:singleLine="true"
android:padding="3dp"
android:textSize="16sp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true" />

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_marginLeft="10dp"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/club_club_logo"
android:id="@+id/club_foot_info" >

<TextView
android:id="@+id/club_type_fake"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bar"
android:paddingRight="4dp"
android:visibility="invisible"
android:textStyle="bold"
android:paddingLeft="4dp"
android:paddingTop="2dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:paddingBottom="2dp"
android:textAllCaps="true"
android:textSize="11sp"
android:textColor="#FFFFFF"
android:layout_marginRight="4dp"
android:background="@drawable/type_btn_bar" />

<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:id="@+id/club_typerate"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >

<TextView
android:id="@+id/club_type_small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bar"
android:paddingRight="4dp"
android:textStyle="bold"
android:paddingTop="2dp"
android:paddingBottom="2dp"
android:paddingLeft="4dp"
android:textAllCaps="true"
android:textSize="11sp"
android:textColor="#FFFFFF"
android:background="@drawable/type_btn_bar" />

<RatingBar
android:id="@+id/club_rating_small"
android:padding="1dp"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_toRightOf="@id/club_type_small"
android:layout_centerVertical="true"
android:isIndicator="true"
android:stepSize="0.01"
android:numStars="5"
style="@style/foodRatingBar"
/>

</RelativeLayout>
<TextView
android:id="@+id/club_title_small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="16sp"
android:singleLine="true"
android:text="ROXY Prague"
android:ellipsize="end"
android:padding="1dp"
android:layout_below="@id/club_type_fake"
android:layout_marginTop="3dp"
android:textColor="#000"
android:textStyle="bold"
/>

<TextView
android:id="@+id/club_openclose_small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="14sp"
android:gravity="fill"
android:text="@string/open"
android:textColor="#00AC00"
android:layout_below="@id/club_title_small"
/>


</RelativeLayout>

</RelativeLayout>


</RelativeLayout>

最佳答案

getView() 中,您将评级请求为整数,然后将其转换为 float 。因此,十进制值会丢失。改为存储一个浮点值,然后使用 getFloat:

holder.rating.setRating(clubs.getFloat("clubRating")); 

关于java - RatingBar 不显示准确的评分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28339367/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com