5 maneres de passar dades entre controladors de visualització

Bloc

5 maneres de passar dades entre controladors de visualització

En aquest article, explorarem cinc maneres de passar dades entre els controladors de visualització, amb fragments de codi Swift i exemples. Les cinc maneres són:



  1. Vostè segueix
  2. Patró de disseny delegat
  3. Patró de disseny Singleton
  4. Tancaments
  5. Centre de notificacions

Els segments són un mode de storyboard per passar dades.

Imagineu que la vostra aplicació té una pantalla integrada i voleu demanar el nom de l'usuari per dirigir-s'hi més endavant en una altra pantalla:



Imatge per publicar

Comenceu a crear el segue mitjançant un storyboard. Control + feu clic a l’element d’interfície d’usuari que faràs servir per fer el pont i arrossega al segon controlador de visualització. Seleccioneu l'opció Mostra al menú Segueix l'acció.



Imatge per publicar

Control + feu clic al botó i arrossegueu al segon ViewController i, a continuació, seleccioneu Mostra.

Ara, al primer ViewController classe, heu de substituir el prepare(for segue) mètode:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) { // Create a variable to store the name the user entered on textField let nickName = textField.text ?? '' // Create a new variable to store the instance of the SecondViewController // set the variable from the SecondViewController that will receive the data let destinationVC = segue.destination as! SecondViewController destinationVC.nickName = nickName }

El vostre SecondViewController la classe hauria de ser així:

import UIKit class SecondViewController: UIViewController { @IBOutlet weak var nickNameLabel: UILabel! //a variable to hold the data from the first ViewController var nickName: String = '' override func viewDidLoad() { super.viewDidLoad() nickNameLabel.text = 'Hello, ' + nickName } }

#mobile #xcode #programming #ios #swift #controllers

medium.com

5 maneres de passar dades entre controladors de visualització

Pas de dades entre controladors de visualització amb propietats (A → B) Mitjançant una propietat d’instància (A → B) Mitjançant segues (per Storyboards) Mitjançant funcions i propietats d’instància (A ← B) Mitjançant el patró de delegació. Mitjançant l’ús d’un gestor de tancament o finalització. Mitjançant l’ús de NotificationCenter i el patró Observer.