在开源基础上扩展功能
获取触摸事件的位置(x,y)
android之View坐标系(view获取自身坐标的方法和点击事件中坐标的获取)_weijinqian0的博客-CSDN博客
//评分控件的地址
val starView = helper.getView<RatingStarView>(R.id.starView)
starView.setRating(1.5f)
starView.setOnTouchListener { view, motionEvent ->
val w = view.width
val sx = motionEvent.x
// println("${sx} ${w}----------dfasdfad-----${(sx / w)*5}")
var rat = (sx / w) * 5
val ratss = rat.toString().split(".")
if ("0.${ratss[1]}".strToFloat() > 0.7f) {
rat = ratss[0].strToFloat() + 1.0f
} else if ("0.${ratss[1]}".strToFloat() < 0.3f) {
rat = ratss[0].strToFloat()
}
starView.setRating(rat)
true
}