J'utilise l'API de repos WordPress dans lequel lorsqu'un utilisateur ne télécharge pas l'image de WordPress Backend, il ne contient pas ce champ et rénovez une erreur d'exception comme org.json.jsonception: Aucune valeur de la vignette lorsque je téléchargea l'image que je Je reçois la réponse sur la manière de gérer cela lorsque la réponse n'a pas de champ de vignettes et réponse comme celle que je reçois: p> } P> Dans certains cas, je ne reçois pas le champ de vignette Comment gérer ce champ d'image P> Enfin, j'ai fait comme ça: P> if ( jsonResult.has("thumbnail")) {
imageUrl = jsonResult.getString("thumbnail");
Glide.with(getApplicationContext()).load(imageUrl).into(imageView);
} else {
Toast.makeText(getApplicationContext(), "No Image Exist", Toast.LENGTH_SHORT).show();
Glide.with(getApplicationContext()).load(R.drawable.sikarlogo).into(imageView);
}
6 Réponses :
Essayez cette méthode et appelez cette méthode comme celle-ci p> si sa null, il vous donnera une chaîne vide si vous utilisez gson fort> p> et si vous utilisez JSONOBJECT STRT>, vous pouvez vérifier avec opter comme ceci p>
Utilisez ceci pour vérifier que la touche est disponible ou non
if(jsonResult.hasKey("thumbnail"){ if ( jsonResult.getString("thumbnail")== null) { Toast.makeText(getApplicationContext(), "No Image Exist", Toast.LENGTH_SHORT).show(); Glide.with(getApplicationContext()).load(R.drawable.sikarlogo).into(imageView); } else { imageUrl = jsonResult.getString("thumbnail"); Glide.with(getApplicationContext()).load(imageUrl).into(imageView); } }
si (jsonresult.has ("thumbnail"))) {imageURL = jsonresult.getstring ("thumbnail"); Glisse.avec (gettaplicationContext ()). Charge (imageURL) .Into (imagezview); } else {toast.maketext (gettaplicationContext (), "Aucune image n'existe", toast.length_short) .Show (); Glide.avec (gettaplicationContext ()). Charge (R.Drawable.sikarlog o) .Into (imageview); }
Ils ont un moyen de vérifier que l'objet JSON a la clé ou non, pour une meilleure gestion de ce roi des cas.
jsonResult.has("thumbnail")
Tout d'abord, vous devez vérifier si la touche "Thumbnail" existe ou non
if (jsonResult.has("thumbnail")) { String status = jsonResult.getString("thumbnail")); }
Si vous pensez que la réponse est utile aux autres et satisfaire votre question Veuillez accepter votre question comme réponse
Il y a deux façons dans lesquelles vous pouvez le gérer -
Vous pouvez également utiliser retourne la valeur mappée par nom si elle existe, contraire-la si
nécessaire, ou retombe si aucun cartographie de ce type n'existe. P>
blockQuote> p> ISNULL code> méthode - strong> p>
optstring code>
au lieu d'écrire jsonresult.getstring ("thumbnail") == null code> Vous pouvez vérifier si une réponse contient une touche miniature ou non à l'aide de
JSONRESULT.HAS ("Thumbnail") code> et faire un processus supplémentaire selon vos besoins. P>
Comment gérer quand je ne reçois pas le champ miniature en réponse
Vous avez déjà fait ce
si (jsonresult.getstring ("thumbnail") == null) code>
ça ne fonctionne pas
Une condition fonctionne et obtient une exception d'erreur: pas de valeur pour la vignette
Pourrions-nous avoir une modification effectuée au niveau de l'API. Ils pourraient passer de vides dans le champ miniature si l'image n'est pas téléchargée .Coulez-vous que vous vous laissez savoir la réponse dans la case, l'image n'est pas téléchargée, êtes-vous confronté pendant la réaction?
méthode de travail merci à vous tous
@BugfreeramMohan s'il vous plaît vérifier mon édition