سؤال

My seekbar range is 2-15 , i want to increase the progress by 0.5 for each click on the seekbar. I have browsed and could not find a way.

in oncreate()

sbTaux.setProgress(0) //default value.

sbTaux.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){

    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {

        progress = progress / 1;
        progress = progress * 1;

        if (progress<=2){

            progress=2;
            sbTaux.setProgress(0);
        }

        else {}

        txTaux.setText(Util.decimalFormat(progress));

    }

    @Override
    public void onStartTrackingTouch(SeekBar seekBar) {

    }

    @Override
    public void onStopTrackingTouch(SeekBar seekBar) {

    }

});
هل كانت مفيدة؟

المحلول

Make range 4-30 and then just divide the result by 2 should do the trick

نصائح أخرى

 int myProgress;
 SeekBar seekBar = (SeekBar)layout.findViewById(R.id.seekbar);
 TextView seekBarValue = (TextView)layout.findViewById(R,id.TextView1);
 seekBar.setProgress(2);
 seekBar.incrementProgressBy(1/2);
 seekBar.setMax(15);
 seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener(){
 @Override
 public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    myProgress = progress;
    seekBarValue.setText(myProgress);
}

@Override
public void onStartTrackingTouch(SeekBar seekBar) {

}

@Override
public void onStopTrackingTouch(SeekBar seekBar) {

}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top