J'utilise Xcode 5 dans une application nouvellement créée et quand je viens de la créer, je vais sur le bouton d'exécution et clique dessus, puis le projet est construit mais il ne s'affiche pas dans le simulateur iOS et je reçois le message suivant:
Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' -
perhaps the designated entry point is not set?
J'ai bien sûr googlé à ce sujet et tout le monde souligne que cela se produit parce que XCode ne sait pas encore quel contrôleur de vue est le contrôleur initial. Mais ce qui est étrange, c'est que j'ai créé l'application en tant qu'application basée sur une page (également essayé les options d'application à vue unique et à onglets) et XCode avait déjà défini un Storyboard pour cela.
De plus, lorsque je vais à l'option d'interface principale du projet, le storyboard (nommé "Main" par Xcode lui-même) est défini, et dans le Storyboard, mon contrôleur de vue est défini comme "Contrôleur de vue initiale"
Qu'est-ce qui ne va pas?
Réponses:
Donc, cela m'est aussi arrivé. J'ai vérifié 50 fois et mon "Is Initial View Controller" a été vérifié, croyez-moi. C'est arrivé à l'improviste. Alors, comment ai-je résolu le problème?
la source
Vérifiez le contrôleur de vue initial dans l'inspecteur d'attributs.
la source
Cliquez d'abord sur View Controller dans la barre Utilitaires de droite . Ensuite, sélectionnez l' inspecteur d'attributs et assurez-vous que sous la section Contrôleur de vue, la case à cocher 'Est-ce que contrôleur de vue initial' est cochée!
la source
Cet avertissement est également signalé si vous avez du code comme:
Dans ce cas, accédez à la première page des paramètres cibles et définissez-la
Main Interface
sur vide, car vous n'avez pas besoin d'une entrée de storyboard pour votre application.la source
Utilisation d'Interface Builder:
Vérifiez si « Est le contrôleur de vue initial » est défini. Vous pouvez le configurer en utilisant les étapes ci-dessous:
Si vous avez effectué cette étape et que vous obtenez toujours une erreur,
uncheck and do it again.
Utilisation par programme:
Objectif c :
Rapide :
la source
didFinishLaunchingWithOptions
.J'ai vécu cela avec mon contrôleur de barre d'onglets n'apparaissant pas dans le simulateur avec un écran noir. J'ai fait ce qui suit pour que mon application apparaisse dans le simulateur.
Is Initial View Controller
sous l'onglet Inspecteur d'attributs.la source
Configurer la fenêtre manuellement,
la source
J'obtiens cette erreur lorsque je change le nom du fichier du storyboard " Main.storyboard " EN: " XXX.storyboard "
La solution pour moi était:
Bonne chance
la source
Le produit "Clean" était la solution pour moi.
la source
Outre la bonne réponse ci-dessus, assurez-vous également que vous avez défini la bonne interface principale en général.
la source
1ère option
si vous souhaitez définir votre storyboard personnalisé au lieu d'un contrôleur de vue par défaut.
Changer cet attribut du fichier info.plist
<key>UISceneStoryboardFile</key> <string>Onboarding</string>
L'intégration serait le nom de votre storyboard
pour ouvrir ce fichier, cliquez avec le bouton droit sur info.plist et ouvrez en tant que code source
2ème option
1- Cliquez sur votre projet
2- Sélectionnez votre projet dans la section cible
3- Déplacer vers la section de l' interface de déploiement
4- Changez la section de votre storyboard à partir du champ Interface principale
la source
Si vous avez ajouté un nouveau storyboard, vous devez vérifier les points suivants.
1) Dans votre fichier plist, vérifiez que la valeur du nom de base du fichier de storyboard principal (iPad) ou (iPhone) doit correspondre au nom de votre fichier de storyboard ( n'ajoutez pas l'extension .storyboard )
2) Dans le storyboard, il devrait y avoir un contrôleur de vue défini comme contrôleur de vue initial
3) Nettoyez et construisez votre projet. :)
la source
Si vous avez régulièrement soumis votre code au contrôle de code source, cela peut vous éviter de créer un nouveau Storyboard et éventuellement d'introduire plus de problèmes ...
J'ai pu résoudre ce problème en comparant le code source Git de la version qui fonctionnait avec la version cassée. Le diff a montré que la première ligne devait contenir l'ID du contrôleur de vue initial, dans mon cas, initialViewController = "Q7U-eo-vxw" . J'ai cherché dans le code source pour m'assurer que l'identifiant existait. Tout ce que j'avais à faire était de le remettre et tout fonctionnait à nouveau!
Voici quelques étapes qui peuvent vous aider à résoudre les problèmes:
la source
Vérifiez si vous avez la variable window dans AppDelegate.
Et vérifiez également le storyboard de votre fichier Info.plist.
La définition par programme de rootViewController dans AppDelegate ne résoudra pas l'avertissement. Vous devez choisir de laisser le storyboard définir le contrôleur de vue ou de le faire par programme.
la source
Les projets créés dans Xcode 11 et au-dessus, il ne suffira pas de modifier simplement le fichier de l'interface principale à partir des paramètres du projet.
Vous devez modifier manuellement le fichier Info.plist et définir également le nom du storyboard pour le
UISceneStoryboardFile
.la source
Aucune de ces réponses n'a résolu le problème pour moi. Dans mon cas, il ne définissait pas également le bon manifeste de scène d'application.
J'ai dû changer LoginScreen pour être principal
la source