Ich versuche, die Funktion Notification.Builder.setLargeIcon(bitmap)
zu verwenden, die ein Bitmap-Bild aufnimmt. Ich habe das Bild, das ich verwenden möchte, in meinem Zeichenordner. Wie konvertiere ich das in eine Bitmap?
Sie meinen wahrscheinlich Notification.Builder.setLargeIcon(Bitmap)
, richtig? :)
Bitmap largeIcon = BitmapFactory.decodeResource(getResources(), R.drawable.large_icon);
notBuilder.setLargeIcon(largeIcon);
Dies ist eine großartige Methode, um Ressourcenbilder in Android Bitmap
s zu konvertieren.
Drawable myDrawable = getResources().getDrawable(R.drawable.logo);
Bitmap myLogo = ((BitmapDrawable) myDrawable).getBitmap();
Da API 22 getResources().getDrawable()
veraltet ist, können wir die folgende Lösung verwenden.
Drawable vectorDrawable = VectorDrawableCompat.create(getResources(), R.drawable.logo, getContext().getTheme());
Bitmap myLogo = ((BitmapDrawable) vectorDrawable).getBitmap();
Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.my_drawable);
Context
kann Ihr aktuelles Activity
sein.
Hier ist eine andere Möglichkeit, um Drawable-Ressourcen in Android in Bitmap umzuwandeln:
Drawable drawable = getResources().getDrawable(R.drawable.input);
Bitmap bitmap = ((BitmapDrawable)drawable).getBitmap();
Erstellen Sie zuerst ein Bitmap-Bild
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.image);
jetzt Bitmap in Notification Builder Icon setzen.
Notification.Builder.setLargeIcon(bmp);
Im Ordner res/drawable
1. Erstelle einen neuen Drawable Resources
.
2. Dateiname eingeben.
Eine neue Datei wird im Ordner res/drawable
Erstellt.
Ersetzen Sie diesen Code in der neu erstellten Datei und ersetzen Sie ic_action_back
Durch Ihren Namen der zu zeichnenden Datei.
<bitmap xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:src="@drawable/ic_action_back"
Android:tint="@color/color_primary_text" />
Jetzt können Sie es mit der Ressourcen-ID R.id.filename
Verwenden.