Wie können Sie die Farbe einer SeekBar dynamisch aktualisieren?

8

Ich hätte gerne die Farbe der Fortschrittsanzeige (speziell des sekundären Fortschritts, der mit setSecondaryProgress ) dynamisch zur Laufzeit ändern, wenn ein bestimmter Punkt überschritten wird.

Ich kann bereits während der onCreate-Funktion meiner Activity (durch Ändern der Farbe von gelb auf grün) mein eigenes Zeichenfeld in den Balken setzen, indem ich setProgressDrawable aufruft und eine von der Standard-Android-Version eines horizontalen Fortschritts kopierte Ressource (SDK) ersetzt /platforms/android-2.1/data/res/drawable/progress_horizontal.xml). Wenn Sie dies jedoch zur Laufzeit aktualisieren (ja, vom UI-Thread über eine AsyncTask), wird der gesamte Fortschrittsbalken mit Ausnahme der Reißzweckentasche schwarz oder transparent.

    
PseudoNoise 23.02.2010, 02:36
quelle

3 Antworten

2

Ich denke, das ist es wonach Sie suchen

Dies kann durch Erstellen benutzerdefinierter drwables für Hintergrund und Fortschritt der Seek-Leiste erreicht werden Sehen Sie sich diesen Link für Beispielcode an.

Bitte beachten Sie auch die folgenden Links Ссылка

Ändern Sie die Farbe einer Suchleiste auf onProgressChanged

    
chandan 09.06.2013, 10:23
quelle
1

SeekColorActivity.java

%Vor%     
Android3 18.06.2011 05:17
quelle
-1

Eine SeekBar ist eine Erweiterung von ProgressBar, die einen ziehbaren Daumen hinzufügt. Der Benutzer kann den Daumen berühren und nach links oder rechts ziehen, um den aktuellen Fortschrittswert festzulegen oder die Pfeiltasten zu verwenden.

Bei SeekBarChange wird die onProgressChanged () von OnSeekBarChangeListener aufgerufen, und der Hintergrund des Bildschirms (LinearLayout) wird entsprechend dem Wert aktualisiert (SeekBar.getProgress ()).

main.xml

    
Android3 18.06.2011 05:09
quelle

Tags und Links