Looking for android Keywords? Try Ask4Keywords

AndroidDefinieren Sie den Schrittwert (Inkrement) für die benutzerdefinierte RangeSeekBar


Einführung

Eine Anpassung der Android RangeSeekBar von Alex Florescu unter https://github.com/anothem/android-range-seek-bar

Sie können einen Schrittwert (Inkrement) festlegen, wenn Sie den Suchbalken verschieben

Bemerkungen

1- Fügen Sie das Attribut inkrement in attrs.xml hinzu

<attr name="increment" format="integer|float"/>

2- Definieren Sie einen Standardwert in RangeSeekBar.java und erstellen Sie auch das Attribut

private static final int DEFAULT_INCREMENT = 1;
private int increment;

3- Init der Inkrementierungswert in privatem void init (Kontextkontext, AttributeSet-Attribute)

if (attrs == null) 
    increment = DEFAULT_INCREMENT;
else 
    increment = a.getInt(R.styleable.RangeSeekBar_increment, DEFAULT_INCREMENT);

4- Definieren Sie den Inkrementwert in geschütztem synchronisiertem void onDraw (@NonNull Canvas Canvas

Sie müssen den Wert für minText und maxText ersetzen. Also statt:

  • minText = valueToString (getSelectedMinValue ());
  • maxText = valueToString (getSelectedMaxValue ());

Sie haben: int x;

        x = (int) ((getSelectedMinValue().intValue()+increment)/increment);
        x = x*increment;
        if (x<absoluteMaxValue.intValue()) 
            minText = ""+x;
        else
            minText=""+(absoluteMaxValue.intValue()-increment);
        
        
        x = (int) ((getSelectedMaxValue().intValue()+increment)/increment);
        x = x*increment;
        maxText = ""+x;

5 - Jetzt müssen Sie es nur noch verwenden. Ich hoffe es hilft

Definieren Sie den Schrittwert (Inkrement) für die benutzerdefinierte RangeSeekBar Verwandte Beispiele