如何在 Android 中禁用用户与 WheelPicker 的交互?
How can I disable user interaction with a WheelPicker in Android?
我正在使用这个 wheel picker 并试图找到一种暂时禁用用户交互的方法。到目前为止,我已经尝试了以下方法:
wheelPicker.setEnabled(false);
wheelPicker.setFocusable(false);
wheelPicker.setOnClickListener(null);
wheelPicker.setClickable(false);
试试这个:
wheelPicker.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
最终,我只是扩展了 WheelPicker class 以获得一个启用的方法。
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;
}
}
我正在使用这个 wheel picker 并试图找到一种暂时禁用用户交互的方法。到目前为止,我已经尝试了以下方法:
wheelPicker.setEnabled(false);
wheelPicker.setFocusable(false);
wheelPicker.setOnClickListener(null);
wheelPicker.setClickable(false);
试试这个:
wheelPicker.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
最终,我只是扩展了 WheelPicker class 以获得一个启用的方法。
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;
}
}