2009-12-14 12 views
13

Kann jemand die Bedeutung von NSNotificationCenter erklären?Was ist NSNotification?

Wo man sie benutzt?

Was ist der Unterschied zwischen NSNotificationCenter und AppDelegate?

Antwort

29

Apple hat ein Observer-Muster in der Cocoa-Bibliothek namens NSNotificationCenter bereitgestellt.

Die Grundidee besteht darin, dass ein Listener sich bei einem Sender mit einem vordefinierten Protokoll registriert. Zu einem späteren Zeitpunkt wird der Sender angewiesen, alle seine Zuhörer zu benachrichtigen, wo er eine Funktion für jeden seiner Zuhörer aufruft und bestimmte Argumente mitteilt. Dies ermöglicht die asynchrone Nachrichtenweiterleitung zwischen zwei verschiedenen Objekten, die nicht voneinander wissen müssen, sie müssen lediglich über den Sender Bescheid wissen.

Sie können mehr Details über sie hier finden: http://numbergrinder.com/node/32

Der Application Delegate ist ein Objekt, das Benachrichtigungen erhält, wenn die UIApplication Objekt bestimmte Zustände erreicht. In vielerlei Hinsicht ist es ein spezialisiertes Eins-zu-Eins-Beobachtermuster.

können Sie hier mehr darüber lesen: What is the AppDelegate for and how do I know when to use it?

2

Wenn Sie aus einem Action Hintergrund kommen dann NSNotification wie Zuhörer ist das Hinzufügen ich zu Objekten erraten.

1

NSNotification ist wie die Benachrichtigung der anderen Klasse über die Änderungen, die passieren werden, wenn eine Aktion in einer anderen Klasse stattfindet.

+1

Willkommen bei Stack Overflow! Sie haben eine ziemlich alte Frage beantwortet, die bereits eine detaillierte, akzeptierte Antwort enthält. Wenn Sie eine Frage beantworten, sehen Sie sich bitte die anderen Antworten an und sehen Sie, ob Ihre neue Antwort neue Einsichten liefert. Wenn nicht, schlage ich vor, dass Sie einige andere Fragen zu beantworten haben. Viel Glück! – Marijn

Verwandte Themen