2016-07-29 11 views
-2

Ich möchte einige Daten aus dem Server oder der Datenbank extrahieren, jetzt bin ich verwirrend, wenn ich den extrahierenden Code in didFinishLaunchingWithOptions() Funktion setzen oder den Code in viewdidload() Funktion einfügen muss der erste Viewcontroller. Was ist die Ausführungseffizienz beider Methoden?Wie kann ich didFinishLaunchingWithOptions in Appdelegate verwenden

Antwort

0

Es hängt von Ihrer Anforderung ab. Wenn Sie möchten, dass die Daten tatsächlich zu einem ViewController gehen, dann können Sie sie in didFinishLaunching WithOptions extrahieren. Aber wenn Sie die Daten nur für viewController wollen, dann ist es eine gute Methode, sie zu extrahieren, wenn Sie sich in diesem viewController befinden, d. H. In viewDidLoad dieses viewControllers.

0

Wenn Sie Daten über das Netzwerk abrufen, würde ich nicht empfehlen, didFinishLaunchingWithOptions zu verwenden. Jeder blockierende Code in dieser Methode verhindert, dass die Benutzeroberfläche der App geladen wird, sodass Sie dem Benutzer nicht einmal die Nachricht "Bitte warten" anzeigen können. Außerdem wird iOS Ihre App beenden, wenn didFinishLaunchingWithOptions zu lange blockiert (ich denke, das Timeout beträgt etwa 10 Sekunden).

Also entweder das Laden in Ihrer Hauptansicht Controller, oder führen Sie es asynchron in einer Hintergrund-Warteschlange - in diesem Fall können Sie natürlich auch den Code in didFinishLaunchingWithOptions setzen.

+0

Bekam es, Danke! –

Verwandte Themen