簡體   English   中英

自定義SeekBar:設置最小值

[英]Custom SeekBar: set min value

我需要將seekbar的值設置為-10到10。默認的SeekBar類不允許設置最小值,而只能設置最大值。 如何設置最小值? 提前致謝。

您無法設置最小值。 您可以做的是:

seekBar.setMax(20);

然后只需抵消從搜索欄獲得的值:

int progress = seekBar.getProgress() - 10;

我使用,但是您必須先設置min

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;

   }

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM