Notifications
In a complex system like Cocoa Touch, the state of the various components is constantly changing. Many of the things that happen are out of your control, but if your app adapts to the new conditions, it will provide a much nicer user experience.
Wouldn't it be great for your app to know when these things happen? Cocoa Touch provides a general mechanism for letting your application know of these changes via notifications. For example:
The iPhone is locked or unlocked (UIApplicationWillResignActiveNotification and UIApplicationDidBecomeActiveNotification).
The device orientation changes from portrait to landscape (UIDeviceOrientationDidChangeNotification).
A user interface element causes the keyboard to appear onscreen (UIKeyboardDidShowNotification).
The battery charge level changes or the device is plugged in (UIDeviceBatteryLevelDidChangeNotification and UIDeviceBatteryStateDidChangeNotification).
A text editing view is updated (UITextViewTextDidChangeNotification).
The pasteboard (Clipboard) changes (UIPasteboardChangedNotification).
Many classes generate notifications, and any object can generate them. The ones shown in this list are just a few posted by UIApplication, UIWindow, UIDevice, UITextView, and UIPasteboard. As you can probably guess by looking at the list, the standard convention is to use the class name at the beginning and the word "Notification" at the end.
When you want your app to be notified, you provide an object, a selector, and the name of the notification. ...
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