Milyen módon valósítható meg az adatok átadása az iOS komponensek vagy képernyők között?
sobes.tech MI
Válasz az MI-től
Az iOS-ben többféle módon lehet adatokat átvinni az összetevők vagy képernyők között:
-
Átadás az inicializáló segítségével — új vezérlő létrehozásakor az adatokat a konstruktoron keresztül adja át.
-
A vezérlő tulajdonságai — a célvezérlő tulajdonságértékeit állítsa be az átmenet előtt.
-
Segue és prepare(for:sender:) módszer — Storyboard használatakor az adatokat a prepare módszerben adhatja át, hivatkozást szerezve a következő vezérlőre.
-
Delegate (képviselők) — az adatokat a gyermekvezérlőtől a szülővezérlőhöz visszaküldeni.
-
NotificationCenter — értesítések küldése az adatokkal, amelyeket más összetevők hallgathatnak.
-
Closure (lezárások) — callback függvények átadása az adatok visszaküldéséhez.
-
Singleton vagy közös adatkezelő — az adatok tárolása és elérése globális objektumon keresztül.
Példa az adatok átadására prepare(for:sender:) segítségével:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "showDetail" {
if let detailVC = segue.destination as? DetailViewController {
detailVC.data = self.selectedData
}
}
}