2017-10-09 13 views
0

J'utilise les références du storyboard dans mon projet. Lorsque j'ai essayé de charger le contrôleur de vue en utilisant self.storyboard, il se bloque. Mais lorsque j'ai créé une nouvelle instance de storyboard et que j'ai essayé de la charger, cela fonctionne parfaitement.Lancement du contrôleur de vue via le crash de self.storyboard

Une autre chose est sans référence de storyboard cela fonctionne parfaitement pour le premier cas également.

J'utilise Xcode 7.3.1.

Avec auto-tableau. Il se bloque

guard let registerViewController = self.storyboard?.instantiateViewControllerWithIdentifier(Sto‌ryboardIdentifier.Re‌gistration) as? RegisterVC else { return } 

Ceci est l'instance de UIStoryboard. Ça marche.

let mainStoryBoard = UIStoryboard.init(name: "Main", bundle: nil) 

    guard let registerViewController = mainStoryBoard.instantiateViewControllerWithIdentifier(StoryboardIdentifier.Registration) as? RegisterVC else { 
     return 
    } 
+2

Vous devez ajouter votre code qui provoque un blocage. Aussi le rapport d'accident. –

+0

afficher le code, à l'endroit où l'accident se produit? –

+0

garde laisser registerViewController = self.storyboard? .instantiateViewControllerWithIdentifier (StoryboardIdentifier.Registration) comme? RegisterVC else { return } – John

Répondre

0

Je vais sortir sur un membre ici, puisque vous utilisez Storyboard Références et dire que mainStoryBoard et self.storyboard font référence à différents storyboards, et celui qui étrangle ne contient pas le nom ViewController StoryboardIdentifier.Registration.

Soit cela ou StoryboardIdentifier.Registration contient une valeur différente dans chaque cas.