J'essaie d'utiliser la Notification.Builder.setLargeIcon(bitmap)
qui prend une image bitmap. J'ai l'image que je veux utiliser dans mon dossier pouvant être dessiné, alors comment puis-je la convertir en bitmap?
Vous voulez probablement dire Notification.Builder.setLargeIcon(Bitmap)
, non? :)
Bitmap largeIcon = BitmapFactory.decodeResource(getResources(), R.drawable.large_icon);
notBuilder.setLargeIcon(largeIcon);
Il s'agit d'une excellente méthode pour convertir les images de ressources en Android Bitmap
s.
Drawable myDrawable = getResources().getDrawable(R.drawable.logo);
Bitmap myLogo = ((BitmapDrawable) myDrawable).getBitmap();
Puisque l’API 22 getResources().getDrawable()
est obsolète, nous pouvons utiliser la solution suivante.
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
peut être votre Activity
actuel.
Voici un autre moyen de convertir une ressource Drawable en Bitmap sous Android:
Drawable drawable = getResources().getDrawable(R.drawable.input);
Bitmap bitmap = ((BitmapDrawable)drawable).getBitmap();
Créer d'abord une image bitmap
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.image);
maintenant définir bitmap dans Notification Builder Icon ....
Notification.Builder.setLargeIcon(bmp);
Dans le dossier res/drawable
,
1. Créez un nouveau Drawable Resources
.
2. Nom du fichier d'entrée.
Un nouveau fichier sera créé dans le dossier res/drawable
.
Remplacez ce code dans le fichier nouvellement créé et remplacez ic_action_back
par votre nom de fichier pouvant être dessiné.
<bitmap xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:src="@drawable/ic_action_back"
Android:tint="@color/color_primary_text" />
Maintenant, vous pouvez l'utiliser avec l'ID de ressource, R.id.filename
.