【问题标题】:How to display rating value(Integer) from an API (Google api) using ratings bar in Android (preferably using Kotlin)?如何使用 Android 中的评级栏(最好使用 Kotlin)从 API(Google api)显示评级值(整数)?
【发布时间】:2020-02-07 14:34:48
【问题描述】:
 val rating = jsonObject.getInt("rating")

例如,评分为 4,在我的视图中显示为 4 星。

我正在寻找以编程方式将其显示为图像视图或使用 Ratingsbar 的方法

【问题讨论】:

  • ratingbar.setNumStars(rating);

标签: java android kotlin


【解决方案1】:

在你看来使用RatingBar

<RatingBar
    android:id="@+id/ratingBar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

在您的活动中: 使用synthetic 只需输入您的RatingBar 的ID,它就会得到您的RatingBar

import kotlinx.android.synthetic.main.your_activity.*

val rating = jsonObject.getInt("rating")
ratingBar.numStars = rating

或者只是老派:

val rBar: RatingBar = findViewById(R.id.ratingBar)
rBar.numStars = rating

编辑:你想知道的关于调整大小:

<RatingBar
        android:id="@+id/ratingBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:max="5"
        android:rating="3.5"
        android:scaleX=".5"
        android:scaleY=".5"
        android:transformPivotX="0dp"
        android:transformPivotY="0dp" />

您可以使用 scaleXscaleY 相应地调整大小(选择两者的平衡值),两者的基值都是 1。 (.5,.5 将使其变为原始大小的一半。)

这里有一个关于调整大小的问题:How can I decrease the size of Ratingbar?

【讨论】:

  • 您好,您知道如何更改星星的大小吗?我尝试使用 style="@style/Widget.AppCompat.RatingBar.Small" 但它不起作用
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-08
  • 1970-01-01
  • 1970-01-01
  • 2016-05-12
  • 1970-01-01
  • 1970-01-01
  • 2016-02-17
相关资源
最近更新 更多