Android 将自定义值设置为搜索栏

Android 将自定义值设置为搜索栏,android,increment,seekbar,Android,Increment,Seekbar,我想从基数3开始搜索baar,增量为2,最大值为9。如何设置,我需要3,5,7,9,11。我的代码是 这不是我想要的,请帮忙 SeekBar sb1 = (SeekBar)findViewById(R.id.sBtaxitype); sb1.setMax(11); sb1.setLeft(3); sb1.incrementProgressBy(2); sb1.setProgress(0); // Set it to zero so it will start a

我想从基数3开始搜索baar,增量为2,最大值为9。如何设置,我需要3,5,7,9,11。我的代码是

这不是我想要的,请帮忙

SeekBar sb1 = (SeekBar)findViewById(R.id.sBtaxitype);

    sb1.setMax(11);
    sb1.setLeft(3);
    sb1.incrementProgressBy(2);
    sb1.setProgress(0); // Set it to zero so it will start at the left-most edge
    sb1.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
             if (progress < 3) {
                 progress = 3;
                 progress = progress + 2;
             } else {
                 progress = progress + 2; // Add the minimum value (10)
             }

            TextView text = (TextView)findViewById(R.id.tvTaxitype);
            text.setText(Integer.toString(progress));

        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {}

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {}

    });
SeekBar sb1=(SeekBar)findViewById(R.id.sBtaxitype);
sb1.setMax(11);
sb1.设置左(3);
sb1.递增进度(2);
sb1.setProgress(0);//将其设置为零,使其从最左边开始
sb1.setOnSeekbarchaneListener(新的OnSeekbarchaneListener(){
@凌驾
public void onProgressChanged(SeekBar-SeekBar、int-progress、boolean-fromUser){
如果(进度<3){
进展=3;
进度=进度+2;
}否则{
进度=进度+2;//添加最小值(10)
}
TextView text=(TextView)findViewById(R.id.tvTaxitype);
setText(Integer.toString(progress));
}
@凌驾
开始跟踪触摸时的公共无效(SeekBar SeekBar){}
@凌驾
TopTrackingTouch(SeekBar SeekBar){}上的公共无效
});
setLeft()
用于定位。
SeekBar
始终以值0开始,并上升到最大值(默认情况下为100,通过
setMax()覆盖)

要获得3-11范围,请调用
setMax(8)
,然后在检索当前值时将3添加到
getProgress()
的结果中。

setLeft()
用于定位。
SeekBar
始终以值0开始,并上升到最大值(默认情况下为100,通过
setMax()覆盖)


要获得3-11范围,请调用
setMax(8)
,然后在检索当前值时将3添加到
getProgress()
的结果中。

要以增量移动搜索杆,请从user
测试
,并将进度设置为所需的值。
在本例中,移动进度指示器时,进度指示器将“捕捉”到最接近的10

@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
{
  // round progress up or down to the nearest 10
  int roundedProgress = (int) (Math.rint((double) progress / 10) * 10);
  if (fromUser)
  {
    seekBar.setProgress(roundedProgress);
  }
}

要以增量移动SeekBar,请测试用户的
并将进度设置为所需的值。
在本例中,移动进度指示器时,进度指示器将“捕捉”到最接近的10

@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
{
  // round progress up or down to the nearest 10
  int roundedProgress = (int) (Math.rint((double) progress / 10) * 10);
  if (fromUser)
  {
    seekBar.setProgress(roundedProgress);
  }
}

当前正在发生的事情…首先是1,然后是5,然后是5,然后是7当前正在发生的事情…首先是1,然后是5,然后是5,然后是5,然后是7,正如u所说的,它只增加1,不获取,m使用setleft(0),最大值是8,现在是sb1。递增进度比(2),正在进行中,再次递增进度比2,但是没有得到我需要的值正如u所说,我使用了它,它只增加了一个,没有得到,m使用setleft(0),最大值是8,现在是sb1.incrementProgressBy(2),并且在进行中再次增加了2,但是没有得到我需要的值