2014-04-21 32 views

回答

1

您不能設置最小值。 你可以做的是:

seekBar.setMax(20);

然後簡單地抵消你從搜索條中獲得的價值:

int progress = seekBar.getProgress() - 10;

0

我用,但必須先設置最小

public class SeekBarMin extends SeekBar { 

    private int min; 

    public SeekBarMin(Context context) { 
    super(context); 
    min = 0; 
    } 

    public SeekBarMin(Context context, AttributeSet attrs){ 
     super(context, attrs); 
     min = 0; 
    } 

    public SeekBarMin(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
     min = 0; 
    } 

    public synchronized void setMin(int min) { 
     this.min = min; 
    } 

    public synchronized int getProgress() { 
     return super.getProgress() + min; 
    } 

    public synchronized void setMax(int max) { 
     super.setMax(max - min); 
    } 

    public int getMax() { 
    super.getMax() + min; 
    } 

    public int getMin() { 
     return min; 

    } 

}