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
.
4 Réponses :
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);
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.
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
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
et If U can Change Picasso avec Glide . peut-être peut vous aider
J'essaye Picasso parce que Glide ne m'a pas fonctionné la première fois aussi.
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.
vérifiez cette réponse stackoverflow.com/a/54094950/3321991