Ich habe derzeit eine Anwendung, wo Sie eine Sache in eine Ansicht eingeben und es erscheint in einer anderen Ansicht. Soll ich das einfach tun, indem ich die Informationen an eine Datenbank sende und sie dann auf der anderen Ansicht abrufe oder gibt es eine Möglichkeit, diese Informationen direkt weiterzugeben?iOS Weitergabe von Informationen aus verschiedenen Viewcontrollern swift
Antwort
Wenn Sie Storyboard verwenden, haben Sie einen Blick in Segues
Ich mache derzeit alles programmgesteuert. Gibt es eine andere Art und Weise? – tryingtolearn
Der beste Weg, um Informationen von einem Viewcontroller zu einem anderen segues sind zu senden.
Sie können es wie folgt verwenden:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if(segue.identifier == "yourIdentifierInStoryboard") {
let yourNextViewController = (segue.destinationViewController as yourNextViewControllerClass)
yourNextViewController.value = yourValue
Und in Ihrer yourNextViewController Klasse.
class yourNextViewControllerClass {
var value:Int! // or whatever
Sie können dies fordern auch programmatisch:
self.performSegueWithIdentifier("yourIdentifierInStoryboard", sender: self)
Set Werte von Ihrem DestinationViewController zurück zu Ihrem Primary (First) Viewcontroller
1. ein Protokoll implementieren, zum Beispiel Erstellen Sie eine Datei namens protocol.swift.
protocol changeUserValueDelegate {
func changeUser(toValue:Bool)
}
2. stellen Sie den Delegierten auf dem zweiten Blick
class yourNextViewControllerClass {
var delegate:changeUserValueDelegate?
3. die Delegierten auf Last (prepareForSegue)
if(segue.identifier == "yourIdentifierInStoryboard") {
var yourNextViewController = (segue.destinationViewController as yourNextViewControllerClass)
yourNextViewController.delegate = self
4. Add-Funktion eingestellt zu FirstViewController
func changeUser(toValue:Bool) {
self.currentUserValue = toValue
}
5. Aufruf dieser Funktion von Ihrem SecondViewController
delegate?.changeUser(true)
6. Stellen Sie den Delegierten in Ihrem FirstViewController
class FirstViewController: UIViewController, ChangeUserValueDelegate {
Danke für diese detaillierte Antwort.Gibt es einen Link zu einem Tutorial, das du hier posten kannst? – tryingtolearn
Dies war eine Antwort von mir auf eine andere Frage. Aber es gibt viele Tutorials: https://www.raywenderlich.com/113394/storyboards-tutorial-in-ios-9-part-2 – derdida
wenn Sie es tun programatically dann können Sie geben Ihr Ziel-View-Controller eine Kennung im Storyboard und wenn Sie zum Viewcontroller wechseln, holen Sie sich diesen Viewcontroller mit dieser ID entifier und eine Eigenschaft mit dem zweiten View-Controller hinzufügen, um den Text zu bekommen Sie
Beispiel geschrieben haben:
let storyBoard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
let secondViewController = storyBoard.instantiateViewControllerWithIdentifier("secondViewControllerIdentifier") as! UserBasicInfoViewController
secondViewController.Text = self.textField.text
self.navigationController?.pushViewController(userProfile, animated: true)
Oder
self.presentViewController(secondViewController, animated: true, completion: nil)
- 1. Datenaustausch zwischen ViewControllern - Swift
- 2. Problem mit der Weitergabe von Informationen zwischen Swift-Dateien
- 3. Weitergabe von Informationen über Formulare
- 4. Wie übertrage ich Informationen zwischen 3 Viewcontrollern?
- 5. IOS App in Swift 3 nicht zu weiteren Viewcontrollern navigieren
- 6. Redux: Weitergabe von Informationen an/aus dem Fenster Kind
- 7. Weitergabe von Informationen an Vorlage aus mehreren Tabellen mit Laravel
- 8. Weitergabe von Informationen aus mehreren Datenbanken mit Laravel
- 9. Swift mit init in viewControllern
- 10. Weitergabe von Informationen über einen Aktivitätsschalter
- 11. Python/Psychopy: Weitergabe von Informationen zwischen Funktionen
- 12. Weitergabe von Informationen durch verschiedene Module Haskell
- 13. Weitergabe von Informationen an die Website
- 14. iOS - Anzeigen von Informationen aus tableView didSelect
- 15. Hochladen Karte Informationen zu Firebase - iOS Swift
- 16. Swift - Umschalten zwischen ViewControllern funktioniert nicht
- 17. Wählen Sie Informationen aus verschiedenen Tabellen SQL
- 18. iOS: Weitergabe von benutzerdefinierten NSURL zu NSURLProtocol
- 19. vlookup extrahieren Informationen aus verschiedenen Excel-Arbeitsmappe
- 20. Weitergabe von Informationen von JS zu ASP Server Seite
- 21. Zuordnung von Datenstrukturen und Weitergabe von Informationen an eine Datenstruktur
- 22. Weitergabe von Daten OHNE Navigation (Swift)
- 23. Gute Möglichkeit zum Abrufen von Informationen aus Firebase Swift
- 24. Weitergabe von Informationen von einem Jframe zu einem anderen
- 25. Weitergabe von Informationen (HTML-Code) zu anderen ASP.NET (C#) Website
- 26. Single Softlayer-API zum Sammeln von Informationen aus verschiedenen Diensten
- 27. Speichern von api Facebook-Daten für die Verwendung in verschiedenen ViewController Swift iOS
- 28. iOS erhalten Benutzer persönliche Informationen aus dem Gerät
- 29. UISwitch/UISlider Werte beim Umschalten von ViewControllern
- 30. Wie können JSONModel-Daten in verschiedenen ViewControllern verwendet werden?
@EricAya Danke für den Tipp! Ich werde dafür sorgen, dass das nicht passiert. – tryingtolearn