SeekBar 组 - 在 maxValue 之前停止拖动
SeekBar Group - stop drag before maxValue
我正在为目前的情况而苦苦挣扎。我必须模拟人们从桶中选择物品。我必须用 3 个搜索栏来完成,但是当桶中没有更多项目可用时,我必须停止拖动每个栏。所有搜索栏都需要具有相同的 BUCKET_ITEM_COUNT 最大值。
有什么方法可以将这些搜索栏停止在与 maxValue 不同的值,以便它们所有进度的总和小于或等于存储桶大小?
谢谢
你可以这样做:
seekBar1.setMax(bucketTotal);
seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser && progress + seekBar2.getProgress() + seekBar3.getProgress() > bucketTotal) {
seekBar.setProgress(progress1);
} else {
progress1 = progress;
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
将此应用于所有其他人。
我正在为目前的情况而苦苦挣扎。我必须模拟人们从桶中选择物品。我必须用 3 个搜索栏来完成,但是当桶中没有更多项目可用时,我必须停止拖动每个栏。所有搜索栏都需要具有相同的 BUCKET_ITEM_COUNT 最大值。 有什么方法可以将这些搜索栏停止在与 maxValue 不同的值,以便它们所有进度的总和小于或等于存储桶大小? 谢谢
你可以这样做:
seekBar1.setMax(bucketTotal);
seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser && progress + seekBar2.getProgress() + seekBar3.getProgress() > bucketTotal) {
seekBar.setProgress(progress1);
} else {
progress1 = progress;
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
将此应用于所有其他人。