Ich habe mehrere UIViewControllers
in einem Storyboard ..__ Jetzt möchte ich einige UIViewControllers
in ein anderes Storyboard verschieben. Ist es möglich?
Ja, es ist möglich.
Hinweis: "IBOutlets bleiben nach dem Kopieren unverändert (Verifiziert auf Xcode 6.3.2)."
Es ist möglich zu kopieren, aber Sie müssen beide Storyboards gleichzeitig in einem Projekt öffnen und dann kopieren und einfügen.
Wenn Sie in Xcode 8 gezielt View Controller in ein anderes Storyboard verschieben möchten, wählen Sie einfach die View Controller aus, die Sie mit Cmd verschieben möchten + klicken Sie auf den View Controller. Wenn Sie sie ausgewählt lassen, wechseln Sie zur Registerkarte "Editor" und wählen Sie "In Storyboard umwandeln". Sie werden nach dem Namen der neuen Storyboard-Datei gefragt und drücken Sie die Eingabetaste.
Es wird eine neue Storyboard-Datei erstellt, in der sich die ausgewählten Ansichts-Controller befinden. Im Main.storyboard wird anstelle dieses View-Controllers ein Storyboard-Referenzobjekt angezeigt. Dies ist Ihre Referenz auf das gerade erstellte neue Storyboard.
Kopieren und Einfügen (Befehlstaste + C, Befehlstaste + V) funktioniert einwandfrei. Denken Sie jedoch daran, die Outletverbindungen aufzulösen, da Xcode die ursprünglichen Verbindungen beizubehalten scheint.
Kopieren/Einfügen ist möglich, aber es funktioniert nur, wenn beide Storyboards mit dem Xcode-Assistenten-Editor nebeneinander geöffnet sind.
Ich bin auf eine ähnliche Situation gekommen, in der ich in meinem Main Storyboard zu viele Szenen habe und überarbeiten muss .. Die Idee, die ich anfangs hatte, war, mehrere zu markieren und das Kopieren einzufügen, wie von vielen vorgeschlagen. Ich war jedoch besorgt über die Auflösung von Storyboard-Verbindungen zum View-Controller-Code . Nach langem Suchen stellte ich fest, dass seit iOS 9 eine neue Funktion für "Refactor to Storuboard" verfügbar ist. Sie können in Ihrem Quell-Storyboard mehrere Szenen markieren und diese Option im Editor-Menü auswählen. Dann werden alle ausgewählten Szenen aus Ihrem alten Storyboard extrahiert, ein neues Storyboard wird erstellt sowie ein Link zu dem im alten/Haupt-Storyboard. Nützliche Optionen sind: https://code.tutsplus.com/tutorials/ios-9-staying-organized-with-storyboard-references--cms-24226https : //www.raywenderlich.com/115697/ios-9-storyboardss-lehrgang-was neues-in-storyboards
Ich hoffe, dass diese neue offizielle Storyboard-Refactoring-Funktion eine bessere Lösung für diese Art von Problemen bietet.
Oberflächenelemente können mit Copy/Paste zwischen Xib- und Storyboard-Dateien verschoben werden.
Das funktionierte ursprünglich nicht für mich. Ich habe versucht, eine UICollectionViewCell von einem dedizierten Xib in unser Main Storyboard zu kopieren. Die Zelle würde nicht in das Storyboard kopieren.
Die Lösung bestand darin, das spezifische übergeordnete Element im Storyboard auszuwählen. Die UICollectionViewCell kann im Storyboard als untergeordnetes Element einer UICollectionView eingefügt werden. Andernfalls kann sie nicht eingefügt werden.
Wenn Sie Probleme beim Einfügen eines bestimmten Elements haben, vergewissern Sie sich, dass Sie ein gültiges übergeordnetes Element ausgewählt haben, bevor Sie das Einfügen versuchen.
Wenn die Verwendung von Cut-n-Paste für Sie fehlschlägt, gibt es eine Problemumgehung. Das Einfügen schlägt fehl, wenn sich jetzt ViewController in der Datei befindet, in die eingefügt wird. Dadurch kann das Storyboard nicht zum Einfügen ausgewählt werden. XCode lehnt das Einfügen ab. Sie müssen also zunächst einen leeren View-Controller aus der Bibliothek in das Storyboard ziehen. Wählen Sie dann diesen ViewController im Storyboard aus und das Einfügen wird funktionieren. Nach dem Einfügen können Sie den Dummy-ViewController löschen. Du wirst es nicht mehr brauchen.