可以通过界面onProgressChanged
中的OnSeekBarChangeListener()
通知进度更改事件。
但是如何知道改变是否会减少进度还是增加呢?或者有一个界面或方法,如:
onSeekBarProgressDecreased(....)
或onSeekBarProgressIncreased(...)
答案 0 :(得分:6)
没有可用于进度减少或增加事件的界面。你必须跟踪它。你可以使用这样的东西。
int prevProgress;
mSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
@Override
public oid onProgressChanged (SeekBar seekBar, int progress, boolean fromUser){
int diff = progress - prevProgress;
if(diff > 0){
//increase
}
else{
//decrease
}
prevProgress = progress;
}
});
答案 1 :(得分:3)
private prevValue;
seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) {
if(progressValue < prevValue){
Toast.makeText(getApplicationContext(), "Progress decreased", Toast.LENGTH_SHORT).show();
}else if(progressValue > prevValue){
Toast.makeText(getApplicationContext(), "Progress increased", Toast.LENGTH_SHORT).show();
}
prevValue = progresValue;
}
....
}