1
votes

Picasso ne charge pas la vue dans MainActivity

Je fais un projet Android Studio de base pour charger une URL dans un ImageView à l'aide de Picasso avec Kotlin. J'ai suivi chaque étape de la page Web officielle de Picasso, mais lorsque j'exécute mon application, l'émulateur affiche une vue vide.

Dans mon Gradle, j'ai ajouté l'implémentation de Picasso:

Picasso.get().load("http://paproject.online/hp.jpg").into(imageTest)

Et l'autorisation Internet dans la balise manifeste aussi:

<uses-permission android:name="android.permission.INTERNET"/>

Et dans MainActivity l'utilisation de base de Picasso:

implementation 'com.squareup.picasso:picasso:2.71828'

imageTest est l'identifiant d'un Imageview avec layout_height = 200dp et layout_weight = 200dp .


1 commentaires

4 Réponses :


0
votes

Votre image est plus grande (1024x768) que votre ImageView, mais bien sûr, cela ne devrait pas être une raison pour que vous deveniez vide. Essayez comme ci-dessous qui inclut également la ressource d'image locale nopic pour les cas d'erreur. Il semble que vous ayez le bon include

// Lazy load the image with Picasso
get()
        .load(yourURL)
        .placeholder(R.drawable.nopic)
        .error(R.drawable.nopic)
        .into(img);


1 commentaires

Ok, je viens d'ajouter ce que vous m'avez dit et je charge maintenant le dessinable qui est placé dans l'espace réservé au lieu de l'image URL. Dans mon Logcat n'apparaît aucune erreur.



0
votes

Vous pouvez redimensionner votre image avant de l'inclure dans imageView

Picasso  
.with(context)
.load("http://paproject.online/hp.jpg")
.resize(200, 200) // resizes the image to these dimensions.
.into(imageViewResize);

Ou vous pouvez utiliser n'importe quelle technique de recadrage comme .CenterCrop (). Vous pouvez en savoir plus sur ce https://futurestud.io/tutorials/ redimensionnement et ajustement de l'image picasso


2 commentaires

Je prouve tout ce que vous dites mais ayant toujours une vue vide.


Vous pouvez activer les journaux en appelant .setLoggingEnabled (true) sur votre instance Picasso et afficher toutes les requêtes Picasso sur Android logcat



1
votes

et If U can Change Picasso avec Glide . peut-être peut vous aider


1 commentaires

J'essaye Picasso parce que Glide ne m'a pas fonctionné la première fois aussi.



0
votes

Ok, le problème est déjà résolu. Il semble qu'il y ait un problème de chargement des images sous Android 9.0. La solution se trouve donc dans ce lien: Problème de chargement d'image Picasso avec Android 9.0 Tarte . Merci à tous pour vos réponses.


0 commentaires