如果 Seekbar 已被禁用,如何通过 android 中的代码启用触摸事件?
How to enable Seekbar on touch event if it is already disabled, through code in android?
我正在编写一个代码,其中我将搜索栏设置为禁用,当它到达某个特定位置时,禁用后如果用户再次触摸它,它应该被启用。为此,我使用了 onTouch Listener。但是它一旦被禁用就没有启用,这是代码
seek.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
seek.setEnabled(true);
return false;
}
});
seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if (progress > 23 ) {
seek.setEnabled(false);
}
}
});
提前致谢。请帮忙
据我所知,这是不可能的,但您最多只能将进度设置为 23
用户将滚动多少,它将仅设置为 23。
在 OnSeekBarChangeListener
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if (progress > 23 ) {
seek.setProgress(23);
}
}
希望对您有所帮助。
我正在编写一个代码,其中我将搜索栏设置为禁用,当它到达某个特定位置时,禁用后如果用户再次触摸它,它应该被启用。为此,我使用了 onTouch Listener。但是它一旦被禁用就没有启用,这是代码
seek.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
seek.setEnabled(true);
return false;
}
});
seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if (progress > 23 ) {
seek.setEnabled(false);
}
}
});
提前致谢。请帮忙
据我所知,这是不可能的,但您最多只能将进度设置为 23
用户将滚动多少,它将仅设置为 23。
在 OnSeekBarChangeListener
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if (progress > 23 ) {
seek.setProgress(23);
}
}
希望对您有所帮助。