Ändern Sie dynamisch die SVG-Bildfarbe in Android

7

Ich weiß, dass mithilfe von Drittanbieter-Bibliothek, ist es möglich, SVG-Bild in Android zu verwenden. Bibliothek wie: svg-android

Der Code zum Laden des SVG-Bildes lautet wie folgt:

%Vor%

Es funktioniert gut. Ich kann das Bild sehen. Aber jetzt möchte ich die Farbe für das Svg-Bild zur Laufzeit ändern. Dafür habe ich den folgenden Code ausprobiert, wie in der gleichen Projektbeschreibung erwähnt.

%Vor%

Aber ich kann die Veränderung der Farbe nicht sehen. Also würde ich gerne wissen, wie es möglich ist, die Farbe dynamisch in der Java-Datei zu ändern.

    
iDroid Explorer 29.10.2014, 09:25
quelle

2 Antworten

9

Ich habe wo ist das Problem. Das Problem ist mit dem Farbcode, den ich in Svg-Datei verwende. Es ist nicht genau 0xFF9FBF3B aber # 9FBF3B
Aber während Java-Code müssen Sie es mit ARGB-Wert (z. B. 0xFF9FBF3B) schreiben. Ich habe es aktualisiert und es funktioniert jetzt gut. Ich kann die Farbe der SVG-Datei mit dem gleichen Code ändern.

Ich hoffe, dass dies auch anderen helfen wird, den tatsächlichen Fall zu identifizieren, während die Farbe des SVG-Bildes zur Laufzeit geändert wird.

    
iDroid Explorer 29.10.2014, 13:19
quelle
16

Ich weiß, dass es etwas spät ist, aber ich hatte auch dieses Problem und konnte dieses Problem mit dem setColorFilter (int Farbe, PorterDuff.Mode-Modus) Methode.

Beispiel:

%Vor%     
Antlip Dev 16.10.2015 18:45
quelle