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?

157
demandé sur Shakeeb Ayaz 2012-01-03 23:08:18

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 Bitmaps.

373
répondu poitroae 2014-01-31 19:38:31
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();
43
répondu AndyW 2018-06-26 19:25:56
Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.my_drawable);

Context peut-être votre actuelle Activity.

12
répondu aromero 2012-01-03 19:13:32

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();
9
répondu Ramkailash 2014-10-21 09:54:34

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);
6
répondu Ravi Makvana 2014-11-26 07:31:03

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.

0
répondu Mohammedsalim Shivani 2017-03-28 11:58:34