Android Open Source - android-spinnerwheel Numeric Wheel Adapter






From Project

Back to project page android-spinnerwheel.

License

The source code is released under:

Apache License

If you think the Android project android-spinnerwheel listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * android-spinnerwheel// w  w w  .j  a  v a  2 s.  co  m
 * https://github.com/ai212983/android-spinnerwheel
 *
 * based on
 *
 * Android Wheel Control.
 * https://code.google.com/p/android-wheel/
 *
 * Copyright 2011 Yuri Kanivets
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package antistatic.spinnerwheel.adapters;

import android.content.Context;

/**
 * Numeric Wheel adapter.
 */
public class NumericWheelAdapter extends AbstractWheelTextAdapter {
    
    /** The default min value */
    public static final int DEFAULT_MAX_VALUE = 9;

    /** The default max value */
    private static final int DEFAULT_MIN_VALUE = 0;
    
    // Values
    private int minValue;
    private int maxValue;
    
    // format
    private String format;
    
    /**
     * Constructor
     * @param context the current context
     */
    public NumericWheelAdapter(Context context) {
        this(context, DEFAULT_MIN_VALUE, DEFAULT_MAX_VALUE);
    }

    /**
     * Constructor
     * @param context the current context
     * @param minValue the spinnerwheel min value
     * @param maxValue the spinnerwheel max value
     */
    public NumericWheelAdapter(Context context, int minValue, int maxValue) {
        this(context, minValue, maxValue, null);
    }

    /**
     * Constructor
     * @param context the current context
     * @param minValue the spinnerwheel min value
     * @param maxValue the spinnerwheel max value
     * @param format the format string
     */
    public NumericWheelAdapter(Context context, int minValue, int maxValue, String format) {
        super(context);
        
        this.minValue = minValue;
        this.maxValue = maxValue;
        this.format = format;
    }

    public void setMinValue(int minValue) {
        this.minValue = minValue;
        notifyDataInvalidatedEvent();
    }

    public void setMaxValue(int maxValue) {
        this.maxValue = maxValue;
        notifyDataInvalidatedEvent();
    }

    @Override
    public CharSequence getItemText(int index) {
        if (index >= 0 && index < getItemsCount()) {
            int value = minValue + index;
            return format != null ? String.format(format, value) : Integer.toString(value);
        }
        return null;
    }

    @Override
    public int getItemsCount() {
        return maxValue - minValue + 1;
    }    
}




Java Source Code List

antistatic.spinnerwheel.AbstractWheelView.java
antistatic.spinnerwheel.AbstractWheel.java
antistatic.spinnerwheel.ItemsRange.java
antistatic.spinnerwheel.OnWheelChangedListener.java
antistatic.spinnerwheel.OnWheelClickedListener.java
antistatic.spinnerwheel.OnWheelScrollListener.java
antistatic.spinnerwheel.WheelHorizontalScroller.java
antistatic.spinnerwheel.WheelHorizontalView.java
antistatic.spinnerwheel.WheelRecycler.java
antistatic.spinnerwheel.WheelScroller.java
antistatic.spinnerwheel.WheelVerticalScroller.java
antistatic.spinnerwheel.WheelVerticalView.java
antistatic.spinnerwheel.adapters.AbstractWheelAdapter.java
antistatic.spinnerwheel.adapters.AbstractWheelTextAdapter.java
antistatic.spinnerwheel.adapters.ArrayWheelAdapter.java
antistatic.spinnerwheel.adapters.NumericWheelAdapter.java
antistatic.spinnerwheel.adapters.WheelViewAdapter.java
antistatic.spinnerwheel.demo.CitiesActivity.java
antistatic.spinnerwheel.demo.ProgrammaticSwitchingActivity.java
antistatic.spinnerwheel.demo.TimePickerActivity.java
antistatic.spinnerwheel.demo.TimePickerCustomViewsActivity.java
antistatic.spinnerwheel.demo.WheelDemo.java