J'essaie d'obtenir une image à afficher comme écran de lancement à partir de mon fichier Launch Screen.storyboard, mais l'image ne s'affiche jamais. J'ai des étiquettes qui s'affichent bien, mais l'image n'apparaît pas.
Voici à quoi ressemble l'écran de lancement dans le fichier Launch Screen.storyboard:
Cependant, lorsque j'exécute l'application sur le simulateur (ainsi que sur l'appareil physique), voici ce qui apparaît:
Comme vous pouvez le voir, le libellé "Test" s'affiche correctement, mais l'image ne s'affiche pas. Je ne sais vraiment pas pourquoi cela se produit et rien de ce que j'essaie ne semble fonctionner. Si quelqu'un a des idées sur la façon de résoudre ce problème, il serait grandement apprécié.
Réponses:
Après le redémarrage de Xcode, le nettoyage de la construction et un certain nombre d'autres suggestions sur SO à propos de ce problème. Ce qui a en fait résolu le problème pour moi, c'est un redémarrage dur de l'appareil. (J'ai perdu plus d'une heure là-dessus)
Je suppose que cela montre simplement que le vieil adage: avez-vous éteint et rallumé est toujours vrai pour les derniers gadgets!
Comment redémarrer l'iPhone XS ou l'iPhone XS Max
la source
J'étais aussi en train de jouer avec ça pendant des heures. Mais j'ai trouvé la solution maintenant. Vous devez ajouter l'image à votre projet et également aux assets.xcassets par glisser-déposer.
la source
launch
. Mais cela n'a toujours pas fonctionné. J'ai dû renommer les fichiers image en launch.png, [email protected] et [email protected], les ajouter au projet, les ajouter en tant qu'actif appelélaunch
, puis cela a fonctionné. Merci Apple d'avoir rendu le plus simple des choses inutilement complexes ¬_¬J'ai eu le même problème, l'ajout de l'image aux "Phases de construction -> Copier les ressources du lot" l'a corrigé pour moi.
la source
Suivez les étapes ci-dessous,
Si cela ne fonctionne pas, supprimez les données dérivées. Préférence Xcode-> EmplacementTab-> Données dérivées. Suivez ensuite les étapes ci-dessus.
la source
Cela m'est arrivé et me rend fou, au-delà de me faire perdre quelques minutes jusqu'à ce que je le découvre.
Donc, comme on l'a déjà dit:
Sur l'écran de conception, il n'apparaîtra pas, mais lorsque vous exécuterez votre application, il sera affiché.
J'espère que cela peut aider!
la source
Très frustrant. Solution qui a finalement fonctionné:
Faites un redémarrage dur de l'appareil
Supprimer l'application
Installer l'application depuis Xcode
la source
Enfin, redémarrez le téléphone fonctionne pour moi !!
J'ai passé des heures sur cette question. J'avais essayé de changer le nom des images, de supprimer tous les actifs de l'image, de modifier info.plist, de redémarrer Xcode et même de définir tous les attributs des images (ce que vous pouvez dire à quel point j'étais désespéré).
la source
Ce problème est lié à Assets.xcassets pour le résoudre, vous devez ajouter l'image en tant que ressource mais pas dans le dossier xcassets et cela devrait fonctionner correctement
la source
Dans mon cas, la réinitialisation du contenu et des paramètres du simulateur a résolu le problème.
la source
J'ai fait face au même problème.
la source
Il semble qu'il y ait un problème avec la mise en cache des ressources dans xCode. Eu le même problème, redémarré xCode et tout fonctionne bien après cela.
la source
Redémarrez votre appareil et effacez les données dérivées du code X
la source
Après avoir tout essayé sur plusieurs threads StackOverflow, voici ce qui a fonctionné pour moi:
(Il se peut que vous deviez nettoyer le produit ou les données dérivées pour mettre à jour, mais je n'ai pas eu à le faire)
la source
J'ai eu ce problème après avoir ajouté une image au projet et abattu l'appareil, le problème a été résolu
la source
Modifiait l'image d'arrière-plan de l'écran de démarrage et la nouvelle image ne s'affichait pas (réaction du projet natif).
Suivre les réponses des autres.
J'ai fait tout ce qui suit et cela a été corrigé:
la source
Eh bien, à partir de maintenant, il existe un périphérique Retina et j'ai ignoré l'
@1x
imageAssets.xcassets
.Dans mon cas, j'ai le logo de l'application sur l'écran de démarrage qui n'est pas visible lorsque j'exécute l'application.
Après avoir perdu tellement de temps, j'ai compris que je n'avais fourni
@2x
que des@3x
images pour cette image de logo.la source
Vous devez vous assurer que le nom de fichier de votre image a un format comme .png ou .jpg à la fin sinon cela ne fonctionnera pas. De plus, avant d'ajouter votre image, vous devez vous assurer que le fichier image se trouve dans votre dossier «Assets.xcassets» de votre projet. Cela peut être fait avec un simple glisser-déposer. Assurez-vous également, lorsque vous avez ajouté votre image à votre storyboard, que le nom de l'image en haut à gauche correspond également au nom réel du fichier image. J'essaierais aussi d'examiner les contraintes. J'espère que cela t'aides. Bonne chance avec votre application.
la source
J'ai passé des heures sur ce problème avant de finalement réaliser mon erreur. Lorsque vous ajoutez une image à un UIImageView, il utilisera uniquement le nom de l'image. Si vos images se trouvent dans un dossier différent de votre storyboard, elles s'afficheront dans xcode mais pas lors de l'exécution de l'application. Vous devez ajouter le préfixe de chemin de fichier approprié, par exemple, images / image.png. Il apparaîtra désormais comme un point d'interrogation bleu dans xcode, mais cela fonctionnera dans l'application.
la source
Juste pour ajouter mon 0,02 $ à cette question; J'ai résolu ce problème en utilisant des images PNG au lieu d'images JPG / JPEG.
Après avoir converti les images au format PNG et les avoir écrasées pour réduire un peu la taille, tout a bien fonctionné.
la source
Après avoir investi beaucoup de temps, j'ai eu la solution: -
la source
J'ai fait face au même problème. J'ai essayé différentes solutions pour cela, mais rien ne s'est avéré utile. J'ai ensuite réalisé que l'image n'était pas visible uniquement lorsque j'ai installé directement l'application dans l'appareil et que l'application est toujours connectée au xcode. Si je le déconnecte, puis que j'ouvre l'application, l'image était visible comme prévu. Cela pourrait être un bogue xcode.
la source
J'ai essayé de nettoyer le projet, supprimer le png, supprimer les contraintes ne fonctionnait pas pour moi.
Je viens de faire une autre copie de l'image et renommer la copie, puis j'ai supprimé l'ancienne image et ajouté la nouvelle image (même chose, avec le nom changé), je viens de donner cette image et cela a fonctionné pour moi.
Aussi, je n'utilise pas les Assets.xcassets, en utilisant l'image dans un dossier.
la source
J'ai essayé tellement de choses avec ça (ce fil à lui seul semble avoir un million d'idées et la moitié d'entre elles sont en conflit). Le problème pour moi était que lorsque je faisais des choses comme redémarrer l'appareil et Xcode, l'image s'afficherait pendant quelques sessions de l'application, puis elle s'arrêtait (je ne sais pas pourquoi, mais WOW c'était ennuyeux) .
Après d'innombrables heures, j'ai trouvé que la réponse d'AG dans ce fil est la bonne. La seule chose que je faisais mal, c'est que je créais un nouvel ensemble d'images dans xcassets, mais j'utilisais toujours le nom de l'image dans UIImageView à l'intérieur du storyboard au lieu d'utiliser le nom de l'ensemble d'images.
Pour clarifier, ce que vous feriez est de créer un nouvel ensemble d'images et de le nommer quelque chose comme "Launch-Defaults", puis d'y ajouter vos images. Ensuite, dans UIImageView à l'intérieur du storyboard, vous utilisez l'image "Launch-Default" (sans inclure une extension car il n'y en a pas puisqu'il s'agit d'un jeu d'images).
Lorsque vous faites tout cela, l'image devrait en fait apparaître correctement à l'intérieur de votre storyboard. Certaines personnes disent que l'image s'affichera vide si vous n'utilisez pas l'extension (.jpg ou .png), mais je suppose que c'est parce qu'elles n'utilisent pas le nom de l'ensemble d'images. D'autres disent que vous devez utiliser une extension comme .png ou .jpg, mais la clé est de créer l'ensemble d'images à l'intérieur de xcassets, puis d'utiliser cette image définie à l'intérieur du storyboard. Lorsque cela est fait correctement, il ne devrait pas y avoir de funkiness comme une image qui ne s'affiche pas ou que l'écran de lancement ne fonctionne que de temps en temps (nécessitant un redémarrage).
la source
Dans mon cas particulier, l'écran de démarrage fonctionnait pour le simulateur et d'autres appareils, mais a cessé de fonctionner pour un appareil spécifique. Cela m'a amené à croire qu'il s'agissait de données de mise en cache conservées par xcode (v10 et iPhone 7 v12.1).
J'ai supprimé les données dérivées à:
~/Library/Developer/Xcode/DerivedData/
vider uniquement le contenu du dossier, pas supprimer le dossier. J'ai ensuite redémarré le mac et l'iPhone et nettoyé et reconstruit le projet, et maintenant il apparaît.Je ne sais pas si tout cela était nécessaire, mais je ne voulais plus perdre de temps à le réduire, donc l'approche du marteau ci-dessus a fonctionné pour moi. Mais bien sûr, cela dépend toujours de votre situation spécifique - la mienne était spécifique à l'appareil; pour d'autres, il peut s'agir de l'image réelle ou de la disposition de l'écran de lancement, etc.
la source
Mon problème.
Raison: j'ai renommé les images après les avoir glissées dans Xcode. Solution: ne renommez pas les images après avoir glissé dans Xcode. Cela crée des problèmes pour comprendre Xcode. Renommez les images avant de les faire glisser / ajouter dans Xcode.
J'espère que cela vous aidera!
la source
Je viens de comprendre cela. Mon image de lancement n'apparaissait pas, j'obtiens un écran blanc lors du lancement sur un appareil (iPhone 6, 7+) ou testFlight. Correction: renommé "Landing_screen.png" en "Landing_screen" supprimant la partie .png. L'icône d'image dans Xcode est devenue une icône blanche et dans le storyboard de l'écran de lancement, l'image apparaît maintenant comme un point d'interrogation. L'image de lancement apparaît maintenant et non l'écran blanc. Ma configuration: j'utilise Swift 3.1 avec Xcode 8.3.1. Dans LaunchScreen.storyboard, j'ai ajouté une vue d'image simple et étiré l'image pour l'adapter au contrôleur de vue. J'ai défini les contraintes de mise en page automatique Haut / Bas / Début / Fin pour superview sur 0 - voir l'image ci-dessous:
la source
Dans mon cas, il s'est avéré que j'avais encore des vues liées au contrôleur de vue qui n'était maintenant qu'un contrôleur de vue de base. Si je contrôle-cliquez sur la vue, je peux voir les prises avec des avertissements, cependant, les avertissements ne sont pas apparus dans Xcode, c'est pourquoi j'avais du mal à les trouver.
la source
Cela se trouve être un problème de mise en cache dans XCode / iOS, mais il existe une solution simple à cela: renommez simplement le fichier dans Assets.xcassets, pour que le cache soit régénéré.
la source
Ma première erreur a été de créer un .storyboard normal, de le renommer et de le définir comme écran de lancement dans les paramètres du projet. Dans ce cas, j'ai eu des problèmes d'image. Il semble que certains paramètres manquent dans ce cas, alors je viens de créer un nouveau fichier via fichier-> nouveau et j'ai choisi directement «Écran de lancement», puis cela a fonctionné.
J'avais également à l'esprit que, pour une raison quelconque, les contraintes de mise en page ne sont pas prises en charge dans l'écran de lancement. C'était peut-être comme ça au début, pas sûr, mais maintenant les contraintes devraient fonctionner.
Peut-être que cela aide n'importe qui.
la source
J'ai rencontré le même problème lors de l'utilisation du storyboard de lancement pour afficher l'écran de démarrage et après des recherches, j'ai trouvé que l'image que j'ai définie dans le storyboard de lancement est de taille différente et j'ai défini une vue d'image plus grande que la taille réelle de l'image.
Donc, la solution que j'ai trouvée est soit de définir la taille du contenu de la vue image comme ajustement de l'aspect, soit de définir la taille de la vue image comme la taille de l'image.
Par exemple, si la taille de votre image @ 1x est de 200X200, la vue de l'image doit être de 200X200 que vous résoudrez ce problème.
Comme si vous définissez une taille de vue d'image plus grande que l'image, l'image sera amidonnée et cela n'est pas autorisé.
Si vous avez encore des doutes, veuillez commenter ici et demander
la source