当我使用 seekBar.setEnabled(false) 时,它会使搜索栏变灰。即使禁用它,有什么方法可以保持条的原始颜色和亮度?
谢谢 :)
当我使用 seekBar.setEnabled(false) 时,它会使搜索栏变灰。即使禁用它,有什么方法可以保持条的原始颜色和亮度?
谢谢 :)
我不知道你为什么这样做,但你可以执行以下操作:
public class MySeekBar extends SeekBar{
private boolean myEnabled;
public void setMyEnabled(boolean myEnabled) {
this.myEnabled = myEnabled;
}
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
if(!myEnabled) {
return true;
}
return super.dispatchTouchEvent(event);
}
...
然后使用 setMyEnabled(false) 禁用触摸输入
我刚刚用这个解决了我同样的问题:
normalSB.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
int originalProgress;
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser == true) {
seekBar.setProgress(originalProgress);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
originalProgress = seekBar.getProgress();
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
希望它可以帮助你:D