我想在滑动时读取评级栏值以更改文本评级值(差,好等)我为此使用 setOnRatingBarChangeListener
,但它在用户从栏上松开手指后有效。我也尝试了 onDragListener
但没有成功。
可以肯定的是,我在 xml 中有 android:isIndicator="false"
,但没有变化。
是否有任何其他监听器,用于立即获得评级的代码 - 因为星星在滑动时被正确重绘。 提前致谢
罗马
最佳答案
您必须扩展 RatingBar
,覆盖 onTouchEvent()
并检查 MotionEvent.ACTION_MOVE
事件。
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
if (isPressed()) {
final float x = event.getX();
final float THRESHOLD = 1.0;
if (Math.abs(x - prevX) > THRESHOLD) {
getProgress(); // Now compare with previous progress
}
prevX = x;
}
}
}
关于android - 滑动时获取 RatingBar 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13703423/