Ich versuche, eine horizontale Fortschrittsleiste oben in meinem Rahmen zu platzieren. Aber es scheint eine Polsterung zu geben, die ich einfach nicht entfernen konnte. Irgendwelche Hilfe?
Antworten
Zu viele Anzeigen?Vom Aussehen her denke ich, dass es durch das Bild verursacht wird, das im Standard-Styling verwendet wird
style="@android:style/Widget.Holo.ProgressBar.Horizontal"
(Das Bild, auf das ich mich beziehe, ist dieses: @android:drawable/progress_indeterminate_horizontal_holo
und @android:drawable/progress_horizontal_holo_dark
)
Diese Bilder haben viel Canvas-Hintergrund; daher zeigt es diese Lücke.
Meine Empfehlung:
Verwenden Sie ein benutzerdefiniertes Bild, um Ihre ProgressBar zu stylen. Eines, das nicht viel Canvas-Abstand hat.
Eine vollständige Lösung für dieses Problem wäre wie folgt. Falls jemand Codefragmente benötigt, so habe ich dies gemacht.
- Kopierte alle 8 undeterminierten horizontalen Fortschrittsbalken-Zeichnungen
- Bearbeitete die Zeichnungen mit einem Bildmanipulator und entfernte unnötige Abstände
- Kopierte das zeichenbare XML mit dem Namen progress_indeterminate_horizontal_holo.xml von der Android-Plattform
- Kopierte den Stil Widget.ProgressBar.Horizontal und seine Eltern
- Setzte den Stil und die mindesthöhe manuell im Layout
Hier ist die progress_indeterminate_horizontal_holo.xml
Stil-Ressourcen wurden in meine lokalen Stil-Datei kopiert.
<item name="android:textAppearance">@android:attr/textAppearance</item>
<item name="android:indeterminateOnly">true</item>
<item name="android:indeterminateBehavior">repeat</item>
<item name="android:indeterminateDuration">3500</item>
<item name="android:indeterminateOnly">false</item>
<item name="android:indeterminateDrawable">@drawable/progress_indeterminate_horizontal_holo</item>
Und schließlich, setzte die mindesthöhe auf 4dp in meiner lokalen Layout-Datei.