1.30. Listening for Notifications Sent from NSNotificationCenter
Problem
You want to listen for different system and custom notifications broadcast using NSNotificationCenter.
Solution
Add your observer object to the notification center using
the addObserver:selector:name:object: instance method of NSNotificationCenter before a notification is
broadcast. To stop observing a notification, use the removeObserver:name:object: instance method of
NSNotificationCenter and pass your
observer object, then the name of the notification that you want to stop
observing and the object that you originally subscribed to (this will be
explained in detail in the Discussion section of this recipe).
Discussion
Any object can broadcast a notification and any object within the same app can opt
into listening for notifications with specific names. Two notifications
with the same name can be broadcast, but they must come from two
different objects. For instance, you can have a notification with the
name of DOWNLOAD_COMPLETED that gets fired
from two classes, one being a download manager that downloads images
from the Internet and another being a download manager that downloads
data from an accessory connected to the iOS device. An observer might be
interested only in the notifications of this name coming from a specific
object; for instance, the download manager that downloads data from the
accessory. You can specify this source object (broadcaster) when you
start listening for notifications, using the object ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access