conversion d'une image de ressource dessinable en bitmap
J'essaie d'utiliser le Notification.Builder.setLargeIcon(bitmap)
qui prend une image bitmap. J'ai l'image que je veux utiliser mon dossier drawable alors, comment puis-je convertir bitmap?
6 réponses
Vous voulez probablement dire Notification.Builder.setLargeIcon(Bitmap)
, non? :)
Bitmap largeIcon = BitmapFactory.decodeResource(getResources(), R.drawable.large_icon);
notBuilder.setLargeIcon(largeIcon);
C'est une excellente méthode de conversion d'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 donc 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 actuelle Activity
.
Voici une autre façon de convertir une ressource dessinable en Bitmap dans android:
Drawable drawable = getResources().getDrawable(R.drawable.input);
Bitmap bitmap = ((BitmapDrawable)drawable).getBitmap();
Créez D'Abord Une Image Bitmap
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.image);
Définissez maintenant bitmap dans L'icône du générateur de Notification....
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 drawable.
<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
.