Farbe von Drawable ändern

B

Binbose

Ambitioniertes Mitglied
0
Hallo,

ich habe ein Icon, das einfarbig ist, und der Hintergrund durchsichtig. Ich möchte dieses Icon jetzt einfärben. Ich dachte, dass das mit einem Colorfilter möglich ist, aber bei mir ändert sich nichts. Ist der ColorFilter also überhaupt geeignet für mein vorhaben? Und verwende ich ihn richtig:
Code:
Drawable mDrawable = getActivity().getResources().getDrawable(R.drawable.ic_action_cancel); 
                PorterDuffColorFilter mColorFilter = new PorterDuffColorFilter(0xffff0000,PorterDuff.Mode.MULTIPLY);
                mDrawable.setColorFilter(mColorFilter);
                Bitmap bitmap = ((BitmapDrawable)mDrawable).getBitmap();
                options.icon(BitmapDescriptorFactory.fromBitmap(bitmap)); //Marker auf map
Danke schonmal im vorraus.
 
ja ist es versuch mal diesen modus : SRC_OVER

Der ursprüngliche Beitrag von 20:22 Uhr wurde um 20:24 Uhr ergänzt:

und erzeug kein neues porterduff objekt schrieb einfach in die klammern :
0xffff0000,PorterDuff.Mode.SRC_OVER

oder versuch es mit anderen Modi : SRC_IN oder so
 
Mit SRC_IN und SRC_OUT funktioniert es leider nicht.
Wie meinst du das, kein neues porterduff objekt zu erzeugen?
 
das hier:

PorterDuffColorFilter mColorFilter = new PorterDuffColorFilter(0xffff0000,PorterDuff.Mode.MULTIPLY);

ist vollkommen unnötig etwas zue rstellen was gleich benutzt wird und danach vom GC wieder aufgesaugt wird...

einfach

mDrawable.setColorFilter(0xffff0000,PorterDuff.Mode.MULTIPLY);

tuts auch
 
Okay, stimmt
Aber leider löst das das Problem noch nicht.
 

Ähnliche Themen

D
Antworten
14
Aufrufe
1.648
chrs267
chrs267
S
Antworten
17
Aufrufe
530
jogimuc
J
W
  • whazza
Antworten
0
Aufrufe
703
whazza
W
Zurück
Oben Unten