有谁知道是否有可能让RatingBar从右到左而不是从左到右,或者知道怎么做?
答案 0 :(得分:6)
您可以使用评级栏中的android:rotation="180"
来旋转它
我在我的只读Ratingbars上使用这种方式,我不知道这是否会影响与Ratingbar的交互。
答案 1 :(得分:3)
使用属性android:scaleX="-1"
OR
package com.example.selection;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.RatingBar;
public class InvertRatingBar extends RatingBar {
public InvertRatingBar(Context context) {
super(context);
}
public InvertRatingBar(Context context, AttributeSet attrs) {
super(context, attrs);
}
public InvertRatingBar(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
int width = this.getMeasuredWidth();
event.setLocation(width - event.getX(), event.getY());
return super.onTouchEvent(event);
}
@Override
protected synchronized void onDraw(Canvas canvas) {
int width = this.getMeasuredWidth();
Matrix matrix = canvas.getMatrix();
matrix.preTranslate(width, 0);
matrix.preScale(-1.f, 1);
canvas.setMatrix(matrix);
super.onDraw(canvas);
}
}
答案 2 :(得分:0)
您必须自定义RatingBar
..
然而,您只需要显示RatingBar
图像&然后是某种逆向计算。
Trick将在RatingBar中显示反向图像..在RatingBar中交换选定和未选择的图像。
允许用户对RatingBar
进行评分。您必须交换选定和未选择的计算。我的意思是你必须做反向计算。
StackOverflow上的自定义RatingBar
的完整工作示例仅由我回答。
从此处下载RatingBar
图标:http://developer.android.com/guide/practices/ui_guidelines/icon_design.html