【发布时间】:2014-09-04 16:10:06
【问题描述】:
我已经使用 seekbar 来满足其他要求,现在我在使用这个范围的规模时遇到了问题。我希望我的最大值为 350,000(美元),我的“最小值”或者我应该说“1”值为 5,000。我将如何实现这一点?
【问题讨论】:
我已经使用 seekbar 来满足其他要求,现在我在使用这个范围的规模时遇到了问题。我希望我的最大值为 350,000(美元),我的“最小值”或者我应该说“1”值为 5,000。我将如何实现这一点?
【问题讨论】:
如果我理解正确,您希望搜索栏移动 5,000 到 350,000。
350,000 / 5,000 = 70
final TextView textView = findViewById(R.id.some_text);
seekBar.setMax(69);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
seekBar.setProgress(progress);
textView.setText(String.valueOf((progress+1)*5000));
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
如果我理解错了请告诉我:)
【讨论】:
NumberFormat.getIntegerInstance().format(i); 根据this answer
int min=5000;
int max=350000;
int value = (seekBar.getProgress()*(max-min))+min;
【讨论】: