web-dev-qa-db-fra.com

Impossible de charger l'image "" référencée depuis une nib

Je n'ai pas d'images appelées "" (rien). J'ai parcouru le fichier .xib de l'écran où cela apparaît et je ne trouve rien qui puisse causer cela. Quelqu'un qui a eu le même problème? Voici l'avertissement complet:

Impossible de charger l'image "" référencée à partir d'une nib du paquet avec identifiant "com.blah.Blah"

44
BlueVoodoo

Vous pouvez le faire pour le vérifier depuis votre storyboard, ou votre plume ..__ Ouvrez-le en tant que code source:

enter image description here

Ensuite, "trouvez" le nom de l'image qu'il contient, vérifiez s'il existe mais qu'il est déjà invalide dans votre projet, vous avez probablement supprimé ou modifié son nom et maintenant, il ne semble pas valide.

enter image description here

67
Tom

J'ai eu le même problème et dans mon cas, il y avait un UIButton avec une référence d'image non valide dans le fichier de storyboard. La référence n'était pas vide, il était donc facile de repérer "" dans le fichier de scénario. Cependant, Xcode affiche "Image inconnue" pour le bouton dans le champ Arrière-plan au lieu de "Image d'arrière-plan par défaut". Dans le fichier de storyboard, il apparaît sous la forme

<state key="normal" title="Use" backgroundImage="0E39AEA8-7F29-40B2-96B1-63B99047E8D5">

alors peut-être que grepping pour backgroundImage et la recherche de références non familières aideront à trouver la cause.

36
Vesuri

J'ai eu cet avertissement à cause d'un UITabBarItem . Dans l'inspecteur d'attributs du champ "Image sélectionnée" , un fichier était répertorié, qui correspond également à la valeur du champ "Image" . Néanmoins, j'ai reçu des avertissements jusqu'à ce que le champ "Image sélectionnée" soit vide.

15
Mike E

Juste pour référence, ce problème est également causé par l’utilisation d’images .jpg et leur référencement dans des storyboards/nibs. iOS 8 semble être capable de gérer le contrôle de type approprié entre les images jpg et png au moment de l'exécution. Cependant, sur iOS 7 et les versions ultérieures, vous devrez définir manuellement l'image dans le code et supprimer la référence de l'image à l'intérieur du storyboard pour supprimer l'avertissement.

N'oubliez pas que vous devez définir manuellement le .jpg lorsque vous référencez des images au format jpg.

[self.imageView setImage:[UIImage imageNamed:@"yourImage.jpg"]];
11
Tommy Devoy

Je suis venu chercher la réponse. J'ai cherché dans tout mon code source de storyboard et de projet "" et je ne pouvais le trouver nulle part. L'indice que la vue affichée lorsque l'erreur apparaît est celle dont vous avez besoin. 

  • Ouvrez votre xib ou votre storyboard en sélectionnant le viewController approprié. 

  • Sur la gauche, cliquez sur toutes les flèches grises pour développer la sélection dans votre vue enter image description here

  • cherchez l'icône UIImageView (c'est celle avec le palmier)

  • sélectionnez-le et ouvrez "Inspecteur d'attributs" sur le côté droit .enter image description here

  • Dans la section ImageView en haut de Image ou de
    En surbrillance, vous verrez une "image inconnue" grisée.

  • Utilisez le menu déroulant pour changer ceci à partir de "image inconnue" et compilerrun

  • le tour est joué

8
RyanTCB

Le nib (ou finalement le xib) à l'origine du message d'avertissement est celui qui est chargé lors de l'écriture du message. Vous pouvez ensuite consulter les commandes qui utilisent des images dans l'inspecteur et en trouver une dont le nom est "Image inconnue". Vous pouvez ensuite effacer cette valeur en lui attribuant une valeur, puis en effaçant la valeur. Notez qu'avec UIButton, vous devrez essayer les quatre valeurs différentes de "State Config" (Par défaut, Surligné, Sélectionné et Désactivé) pour voir où la référence invalide pourrait se cacher.

4
ThomasW

Dans mon cas, c'était Unknown image dans UIBarButtonItem dans le storyboard.

 enter image description here

3
ChikabuZ

Dans xcode 5.1, j'ai eu le même problème. La seule façon dont je pouvais enfin le faire fonctionner avec l'utilisation du storyboard était d'ajouter les images en tant que catalogue de ressources d'images. D'après ce que j'ai lu, ils ont peut-être changé quelque chose en 5.1. Je pensais que les storyboards n'avaient pas de pointe - il serait donc logique que le catalogue d'actifs remplace l'ancienne méthode.

Projet> Général> Icône Icône App> Importer un nouveau dossier. 

Dès que j'ai fait cela, les références NIB ont disparu et mes images sont apparues.

2
imaginethepoet

J'utilise Asset Catalog sur Xcode 6. Il suffit de supprimer et d'ajouter de nouveau le catalogue d'actifs pour résoudre le problème.

2
onmyway133

Très simple, supprimez l'image qui ne s'affiche pas dans votre projet, puis nettoyez le projet en sélectionnant Produit -> Nettoyer, puis ré-insérez l'image dans votre projet. cela a fonctionné pour moi. 

2
ProgrammingNinja

dans ma situation, dans mon fichier xib, j'avais déjà configuré le nom de l'image pour UIButton et UIImageView, puis supprimé ces noms après un certain temps, mais pour une raison inconnue, ces images apparaissent toujours dans Interface Builder Editer, puis je réinitialise ces noms. avec un nom d'image et supprimez-les à nouveau, maintenant le problème résolu.

1
yglixm

J'ai eu un problème très similaire que j'ai finalement trouvé. La ligne ci-dessous était à l'origine du problème d'utilisation de la méthode open as source code mentionnée ci-dessus.

<tabBarItem key="tabBarItem" title="Events" 
            image="319365D1-7058-46CD-8420-18E0EAFB2F29" id="a5a-IF-j9f"/>
1
Rich

S'il vous plaît faire une recherche pour image = montre divers résultats. Sélectionnez les résultats de nibs ou storyboard pour l'ouvrir, s'il existe une valeur telle que image = "2342D4DF-1E6B-42B8-847A-F9F622921D02" supprimez-le et profitez-en.

1
Sudheesh

j'ai également rencontré le même problème car j'ai édité une image dans Photoshop et enregistré au format psd, assurez-vous d'enregistrer vos images modifiées au format jpg ou png.

1
Mehul D

Dans mon cas, c'était parce qu'une de mes images de bouton avait été ajoutée à tort au conteneur Image d'arrière-plan plutôt qu'au conteneur Image (dans l'inspecteur). Je l'ai trouvée en parcourant toute la hiérarchie du storyboard et en vérifiant chaque réglage d'image et de bouton.

1
Jim Rota

Cela a fonctionné pour moi:

1- Quitter Xcode

2- Faites une copie de votre .storyboard pour la sauvegarde.

3- Ouvrez votre .storyboard dans un éditeur de texte et supprimez les nœuds d'image et les attributs de nœud d'image avec des références vides.

delete node like this --> <image name=" " .../>
delete image attributes like this --> <tabBarItem key="tabBarItem" title="untitled" image=" " id="6"/>

4- Enregistrer le fichier
5- Ouvrez à nouveau votre projet dans Xcode.
6- Lancer le produit-> Nettoyer
7- Exécuter votre projet

Avertissement devrait être parti.

1
Julio Garcia

J'ai eu cette erreur suite à une action d'annulation, en replaçant simplement l'image sur le contrôleur de vue a résolu le problème.

Atb

1
SonderCode

Initialement, mon nom d’image est "bg". Lorsque j’ai trouvé un problème, je renomme l’image en "arrière-plan", mais lorsque vous cliquez sur l’image, vous cliquez sur "Afficher dans le Finder", les modifications ne sont pas reflétées. l'image était nommée "bg-1.jpg".

donc j’ai retiré du projet une image convertie en png et glissé-déposé dans projet ça marche pour moi.

 enter image description here

0
Avijit Nagare

J'ai eu ce problème pour toutes mes images après avoir changé le texte de l'étiquette en "Attribué" et utilisé l'une des polices "Fun". Même si je le repasse en mode "normal", le message d'erreur "Impossible de charger ..." s'affiche - jusqu'à ce que je recharge et que toutes mes images soient à nouveau référencées.

0
sp00ky