跳转至

评分控件

快速使用

<com.ave.vastgui.tools.view.ratingview.RatingView
    android:id="@+id/ratingView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

查看默认样式

设置选中方式

Version 0.5.3

调用 setStarSelectMethod 来设置星星的选中方式,目前支持三种:

  • Sliding:滑动
  • Click:点击

    点击行为变更

    从 0.5.6 版本开始,当选择方式设置为 Click 时,星星的选中数量只能为整数。

  • Unable:只能通过代码设置

mBinding.ratingView.setStarSelectMethod(RatingSelectMethod.SLIDING)

设置排列方向

Version 0.5.3

目前支持两种星星排列方式:

  • HORIZONTAL:横向
  • VERTICAL:纵向
mBinding.ratingView.setStarOrientation(StarOrientation.HORIZONTAL)
<com.ave.vastgui.tools.view.ratingview.RatingView
    ...
    app:star_orientation="horizontal" />

默认排列方向

星星的默认排列方向为 StarOrientation.UNSPECIFIED ,方向仅允许通过 setStarOrientationstar_orientation 修改一次。

设置星星间距

调用 setStarIntervalWidth 来设置星星的间距

mBinding.ratingView.setStarIntervalWidth(10F.DP)

设置星星图片

调用 setStarSelectedBitmapsetStarNormalBitmap 来设置星星图片。

mBinding.ratingView.apply{
    setStarSelectedBitmap(R.drawable.ic_star_normal)
    setStarUnselectedBitmap(R.drawable.ic_star_unselected)
}

设置星星图片大小

调用 setStarBitMapSize 来设置星星图片大小

mBinding.ratingView.setStarBitMapSize(40F.DP,40F.DP)

设置星星数量

调用 setStarCountNumber 设置星星数量

mBinding.ratingView.setStarCountNumber(4)

监听星星数量

Version 0.5.6

通过 setOnStarRatingChangeListener 注册监听事件来观察评分的改变。

mBinding.ratingView.setOnStarRatingChangeListener(object : RatingView.OnStarRatingChangeListener {
    override fun onRatingChanged(rating: Float) {
        mLogger.d("当前星星评级为 $rating")
    }
})

示例代码

查看示例代码