Search code examples
androiddatepickerpicker

How can I disable user interaction with a WheelPicker in Android?


I am using this wheel picker and am trying to find a way to disable user interaction temporarily. So far I have tried the following:

    wheelPicker.setEnabled(false);
    wheelPicker.setFocusable(false);
    wheelPicker.setOnClickListener(null);
    wheelPicker.setClickable(false);

Solution

  • Ultimately I just extended the WheelPicker class to have an enabled method.

        import android.content.Context;
        import android.util.AttributeSet;
        import android.view.MotionEvent;
    
        import com.aigestudio.wheelpicker.WheelPicker;
    
    
        public class MyWheelPicker extends WheelPicker {
    
            boolean enabled = false;
    
            public MyWheelPicker(Context context, AttributeSet attrs) {
                super(context, attrs);
            }
    
            @Override
            public boolean onTouchEvent(MotionEvent event){
                if(enabled == true){
                    super.onTouchEvent(event);
                }
                return true;
            }
    
            @Override
            public void setEnabled(boolean enabled){
                this.enabled = enabled;
            }
    
        }