AnderWeb / AnderWeb/discreteSeekBar

Bubble animation breaks when setting new max value

Offen
#124 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
2.1k
Forks
417
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

I have the following onStopTrackingTouch listener:
```
@Override
public void onStopTrackingTouch(DiscreteSeekBar seekBar) {
viewModel.updateValue(seekBar.getProgress());
}
```

The viewModel observer eventually updates the max value of the seekbar:

```
this.viewModel.getSettings().observe(this, settings -> {
this.boostValueSeekBar.setMax(settings.getMax());
this.boostValueSeekBar.setProgress(settings.getValue());
});
```

Even if the max value does not change, the thumb handle disappears forever. The animation is also gone.

This only appears to happen if the max value is changed as a direct result of onStopTrackingTouch.

An easy test case is the following:

```
@Override
public void onStopTrackingTouch(DiscreteSeekBar seekBar) {
seekBar.setMax(seekBar.getMax());
}
```

This will permanently break the indicator until the activity or fragment is reloaded.

**Expected behaviour**
At the very least I would expect setting the max value to the same value to do nothing (this can of course be done by the consumer as well).
In all other cases I would expect the indicator to keep working when setting the max value from onStopTrackingTouch();

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.