web-dev-qa-db-fra.com

Comment contourner ce nouvel avertissement dans Xcode 4.3.1: "La scène est inaccessible en raison du manque de points d'entrée ..."?

J'ai un projet iOS avec un storyboard. J'ai récemment mis à niveau vers Xcode 4.3.1, et maintenant ce nouvel avertissement apparaît:

"La scène est inaccessible en raison du manque de points d'entrée et n'a pas d'identifiant pour l'accès à l'exécution via -instantiateViewControllerWithIdentifier :."

Le problème est que j'ai des contrôleurs de navigation dans le storyboard sans point d'entrée. La raison pour laquelle je les ai est que je puisse y incorporer d'autres vues pour voir la barre de navigation au moment du design dans Xcode. Le contrôleur de navigation réel sur lequel ces vues sont poussées lors de l'exécution n'est pas dans le storyboard (ancien code qui n'a pas encore été porté sur le storyboard).

Quelqu'un at-il trouvé une solution de contournement à Nice pour cela? Je voudrais garder mon code propre sans avertissements.

32
brians

Vous pouvez simplement définir un identifiant. Dans Xcode> 5 sur l'inspecteur d'identité dans le volet droit, vous trouverez un champ appelé "ID de storyboard". Mettez n'importe quelle chaîne là-dedans, et Xcode sera de nouveau heureux.

Il veut juste savoir que vous pouvez l'atteindre (via cet identifiant) si vous le souhaitez.

67
lara

Dans les versions plus récentes de Xcode: il suffit de définir un titre dans Title dans l'inspecteur d'attributs, puis de définir un identifiant dans le Storyboard ID dans l'inspecteur d'identité de votre contrôleur.

16
user1617113

Vous avez peut-être accidentellement copié et collé un contrôleur de vue au-dessus du vrai.

Essayez de faire glisser la vue incriminée pour voir s'il y a quelque chose en dessous.

10
Josh Benjamin

Dans Xcode 6 - vous pourriez obtenir cette erreur si vous avez un nouveau contrôleur de vue qui est autonome. Vous l'avez peut-être créé et n'avez pas utilisé de séquence pour connecter l'écran.

1
Ronaldoh1

Vous pouvez cliquer sur le contrôleur de navigation et sous l'inspecteur d'attributs, cliquez sur le bouton "est le contrôleur de vue initial", cela devrait aussi fonctionner

1
Terrel Gibson

Vous devez définir un identifiant pour chaque ViewController (y compris le contrôleur de navigation) dans le champ "Storyboard ID" du volet "Identity Inspector".

Dans le volet "Attribut Inspector", faites défiler la page jusqu'à la section "View Controller" et si "is Initial View Controller" n'est pas coché, cochez cette case.

Maintenant, lancez l'application.

1
Himanshu Mahajan

Title: Setting "is Initial View Controller" (Using Xcode 6.1)

Contexte: Échec de la construction avec "La scène est inaccessible en raison du manque de points d'entrée et n'a pas d'identifiant pour l'accès à l'exécution via -instantiateViewControllerWithIdentifier :."

Je viens d'installer Xcode et le premier utilisateur, alors excusez-vous à l'avance si les explications manquent de terminologie appropriée.

Résolution: Dans mon cas, la case "is Initial View Controller" n'a pas été cochée

La propriété "is Initial View Controller" se trouve dans le volet le plus à droite de la fenêtre Xcode par défaut ou se trouve sous -> View -> Utilities -> Show Attribute Inspector

Si vous ne voyez aucune propriété définie dans l '"Inspecteur d'attributs", sélectionnez "Contrôleur de vue" dans la zone du story-board. Le petit bouton rond avec un carré au milieu (ou le premier bouton à gauche)

Lorsque vous sélectionnez le "View Controller", vous devriez voir que la case "Attribute Inspector" est maintenant remplie avec divers paramètres de propriété.

Dans le volet "Attribut Inspector", faites défiler la page jusqu'à la section "View Controller" et si "is Initial View Controller" n'est pas coché, cochez cette case.

Maintenant, exécutez le projet. J'espère que cela aide et fonctionne.

0
EastCoastLife