Make ReversibleSeekBar safe

This commit is contained in:
seven332 committed 2016-03-21 14:21:24 +08:00
1 parent b5f15cbbd2
commit d6b6976277
1 file changed
+6 -4
@@ -45,29 +45,31 @@ public class ReversibleSeekBar extends AppCompatSeekBar {
@Override
public void draw(Canvas canvas) {
boolean reverse = mReverse;
int saveCount = 0;
if (mReverse) {
if (reverse) {
saveCount = canvas.save();
float px = this.getWidth() / 2.0f;
float py = this.getHeight() / 2.0f;
canvas.scale(-1, 1, px, py);
}
super.draw(canvas);
if (mReverse) {
if (reverse) {
canvas.restoreToCount(saveCount);
}
}
@Override
public boolean onTouchEvent(MotionEvent event) {
boolean reverse = mReverse;
float x = 0.0f, y = 0.0f;
if (mReverse) {
if (reverse) {
x = event.getX();
y = event.getY();
event.setLocation(getWidth() - x, y);
}
boolean result = super.onTouchEvent(event);
if (mReverse) {
if (reverse) {
event.setLocation(x, y);
}
return result;