Bitmap aus vektor drawable erhalten
In meiner Anwendung, ich habe ein großes Symbol für eine Benachrichtigung.
LargeIcon muss ein Bitmap, und meine drawables sind Vektor-Bilder (die neue Funktion in Android, siehe dieser link)
Das problem ist, wenn ich versuche, Sie zu entschlüsseln, eine Ressource, die ein Vektor-Bild, bekomme ich eine null zurückgegeben.
Hier ist der Beispiel-code :
if (BitmapFactory.decodeResource(arg0.getResources(), R.drawable.vector_menu_objectifs) == null)
Log.d("ISNULL", "NULL");
else
Log.d("ISNULL", "NOT NULL");
In diesem Beispiel, wenn ich ersetzen, R. drawable.vector_menu_objectifs mit einem "normalen" Bild, als png zum Beispiel, das Ergebnis ist nicht null (ich bekomme die richtige bitmap)
Gibt es etwas, was ich bin fehlt?
Kommentar zu dem Problem - Öffnen
Hatte ähnliches Problem, nicht die Lösung, aber ein workaround: stackoverflow.com/questions/33548447/...
Nun, wenn es funktioniert, ist alles, was ich Frage! Ich werde es testen. Dank
Es hat funktioniert, vielen Dank!
InformationsquelleAutor der Frage liltof | 2015-11-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Überprüft API: 17, 21, 23
UPDATE:
Projekt gradle:
Modul gradle:
InformationsquelleAutor der Antwort Alexey
Können Sie die folgende Methode verwenden:
denen ich manchmal zu kombinieren mit:
InformationsquelleAutor der Antwort snodnipper
Basierend auf den vorherigen Antworten kann vereinfacht werden, wie das Spiel sowohl VectorDrawable und BitmapDrawable und kompatibel sein mit mindestens API 15.
Dann haben Sie, um Sie in den gradle-Datei:
Auf pre-Lollipop wird es mit VectorDrawableCompat und auf Lollipop wird es mit VectorDrawable.
BEARBEITEN
Ich habe bearbeitet den Zustand nach dem Kommentar von @user3109468
InformationsquelleAutor der Antwort Eselfar
Großes Lob an @Alexey
Hier ist die
Kotlin
version mit ErweiterungenContext
Beispiel für die Verwendung in
Activity
:InformationsquelleAutor der Antwort Gunhan
imageTeste.setImageBitmap(addGradient(bitmap));
InformationsquelleAutor der Antwort Amine