Awesome
Wheel widget for Android
To include the wheel widget in the current layout, you should add in the layout xml this lines:
<it.sephiroth.android.wheel.view.Wheel
android:id="@+id/wheel"
xmlns:sephiroth="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
sephiroth:numRotations="6"
sephiroth:ticks="28" />
Where numRotations is the max number of rotations the wheel can perform and ticks is the total number of ticks the wheel will display.
In your activity you can add a OnScrollListener listener to the wheel widget, in this way:
mWheel = (Wheel) findViewById( R.id.wheel );
mWheel.setOnScrollListener( new OnScrollListener() {
@Override
public void onScrollStarted( Wheel view, float value, int roundValue ) {
}
@Override
public void onScrollFinished( Wheel view, float value, int roundValue ) {
}
@Override
public void onScroll( Wheel view, float value, int roundValue ) {
}
} );
Where float value is a value between -1.0 and 1.0 of the current indicator position and int roundValue is a value between -(ticksnumRotations) and (ticksnumRotations)
###Change the Wheel value The wheel position and value chan be changed programmatically at runtime using the Wheel's method setValue:
public void setValue( float value, boolean fireScrollEvent );
- value is the new wheel value, a float between -1.0f and 1.0f, where 0.0f it's the center of the wheel.
- fireScrollEvent: if true, once this method is called the onScrollFinished method will be called.