如何检测搜索栏进度变化是减少还是增加?

时间:2015-08-06 03:54:21

标签: android seekbar

可以通过界面onProgressChanged中的OnSeekBarChangeListener()通知进度更改事件。

但是如何知道改变是否会减少进度还是增加呢?或者有一个界面或方法,如: onSeekBarProgressDecreased(....)onSeekBarProgressIncreased(...)

2 个答案:

答案 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;

}
    ....


                }