J'essaie de faire une nouvelle application iOS dans Xcode. J'ai fait un storyboard principal et j'ai ajouté une étiquette sur mon ViewController. Lorsque j'exécute mon application, la première seconde affiche l'étiquette, puis devient l'écran noir sans aucune erreur.
Je travaille sur Xcode 11 (Swift 5) et ce message apparaît sur la sortie:
[SceneConfiguration] La configuration Info.plist "Configuration par défaut" pour UIWindowSceneSessionRoleApplication contenait la clé UISceneDelegateClassName, mais n'a pas pu charger la classe avec le nom "gina.SceneDelegate"
Je ne sais pas où est mon erreur.
SceneDelegate
à ma cible et de cocher la case fixée.Réponses:
iOS 13
SceneDelegate
n'est pas pris en charge avant iOS 13 . Si vous souhaitez utiliserSceneDelegate
et souhaitez également prendre en charge iOS avant iOS 13, vous devez ajouter quelques modifications à votre projet.SceneDelegate
méthodes. Ajoutez-leur également un attribut de disponibilité.UIWindow
objet dans AppDelegate.swift .iOS 12 et versions antérieures
AppDelegate
a besoin d'uneUIWindow
propriété. iOS 13 utiliseSceneDelegate
dans de nouveaux projets. Spécifiez l'UIWindow
objet et supprimez le fichier SceneDelegate.swift .Si vous avez supprimé le
SceneDelegate
projet du, vous devez supprimer le dictionnaire Application Scene Manifest d' Info.plist .la source
Vous devez initialiser la fenêtre comme ceci:
et ajoutez-les dans info.plist:
C'est tout ce que vous devez faire.
la source
$(PRODUCT_MODULE_NAME).
résolu mon problème.