hxb
2022-11-24 9d7d3963cc54eb145c1767f5f124f2881e8e06d4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.mm.android.deviceaddmodule.mobilecommon.widget.antistatic.spinnerwheel;
 
import android.content.Context;
import android.view.MotionEvent;
 
/**
 * Scroller class handles scrolling events and updates the 
 */
public class WheelVerticalScroller extends WheelScroller {
 
    /**
     * Constructor
     * @param context the current context
     * @param listener the scrolling listener
     */
    public WheelVerticalScroller(Context context, ScrollingListener listener) {
        super(context, listener);
    }
 
    @Override
    protected int getCurrentScrollerPosition() {
        return scroller.getCurrY();
    }
 
    @Override
    protected int getFinalScrollerPosition() {
        return scroller.getFinalY();
    }
 
    @Override
    protected float getMotionEventPosition(MotionEvent event) {
        // should be overriden
        return event.getY();
    }
 
    @Override
    protected void scrollerStartScroll(int distance, int time) {
        scroller.startScroll(0, 0, 0, distance, time);
    }
 
    @Override
    protected void scrollerFling(int position, int velocityX, int velocityY) {
        final int maxPosition = 0x7FFFFFFF;
        final int minPosition = -maxPosition;
        scroller.fling(0, position, 0, -velocityY, 0, 0, minPosition, maxPosition);
    }
}