2014-08-27 80 views
2

我想創建搜索欄,我想增加這樣搜索欄搜索條小數增量值

MINVALUE = 5,MAXVALUE = 10

搜索欄值的增量:0 1 2 3 4 5 6

我想要這樣的bar值:5.10,5.20,5.30 ... 9.90,10

如何實現這個。

回答

2
aSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 
@Override 
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
    float value = ((float)progress/20.0); 

    String yourprogress = String.valueOf(value+5.0f); 
    // yourprogress is your desiger output 

} 

@Override 
public void onStartTrackingTouch(SeekBar seekBar) {} 
@Override 
public void onStopTrackingTouch(SeekBar seekBar) {} 
}); 
+0

我實現您的解決方案,它不工作。 – 2014-08-27 10:23:58

+0

你遇到了什麼問題? – 2014-08-27 10:24:18

+0

這給了我5.1,5.05,5.1,5.15的結果。它只給我5.5的價值。我已經設置android:max =「10」 – 2014-08-27 10:27:48

0

這是浮動不可能的。 您必須通過乘以您的增量來制定解決方法。

看到這樣的響應: duplicate

1
aSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 
@Override 
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
    float value = ((float)progress/20.0); 

    String progress = String.valueOf(value+5.0f); 
    // value now holds the decimal value between 0.0 and 10.0 of the progress 
    // Example: 
    // If the progress changed to 45, value would now hold 4.5 
} 

@Override 
public void onStartTrackingTouch(SeekBar seekBar) {} 
@Override 
public void onStopTrackingTouch(SeekBar seekBar) {} 

});

+0

我已經試過以上,其增量像5.01,5.02,5.03 ... – 2014-08-27 10:14:32