Nid d'abeille notifications - Comment mettre en largeIcon à la bonne taille?
Je trouve moi-même curieux de savoir pourquoi le setLargeIcon méthode de Notification.Constructeur accepte uniquement une image Bitmap, sans surcharge de fournir un id de ressource. Peut-être que cela a été fait pour des raisons de performances, mais il semble étrange que setSmallIcon accepte un res drawable id.
Notification.Builder builder = new Notification.Builder(application);
//....
builder.setLargeIcon(iconBitmap); //Requires a Bitmap
builder.setSmallIcon(iconResId); //Requires a drawable resource ID
Notification notification = builder.getNotification();
Malheureusement, le bitmap n'est pas mis à l'échelle dans la notification, de sorte que le Bitmap doit être fourni exactement la bonne taille pour l'affichage des notifications.
En supposant que j'ai besoin de fournir xhdpi, hdpi, mdpi et ldpi versions de la largeIcon bitmap, quelles sont les tailles doivent-elles l'être? Je peux voir aucune mention dans les docs, ou après avoir écumé la plus large du web.
Vous devez vous connecter pour publier un commentaire.
Pas eu l'occasion de vérifier encore mais l'API 11 présenté le public dimens:
Devrait être en mesure de les utiliser à l'échelle de votre image avant de l'installer sur la notification.
int width = getResources().getDimensionPixelSize(android.R.dimen.notification_large_icon_width);
int height = getResources().getDimensionPixelSize(android.R.dimen.notification_large_icon_height);
J'ai utilisé le dimensions de la notification de la grande icône pour créer une échelle bitmap
Et puis j'ai mis la grande icône avec cette échelle bitamp.