Going Deeper with Objective-C
Objective-C includes some unique code idioms. You’ll see them used regularly, so you should be familiar with them. Here’s a partial list of the most important idioms. Others are introduced later in this book.
A selector looks like this:
You can also declare a selector as a variable, like this:
SEL thisIsAMethod = selector(doSomething:);
Selectors aren’t complicated; they’re similar to pointers, but they point to a method instead of an object. They’re one of the more useful features in Objective-C, because you can use them to change the method that’s triggered by some event while the app is running. (Most languages don’t let you do this.)
For example, when you create a timer object, you use a selector to specify the method it triggers when it fires, as shown in the NSTimer documentation in Figure 6.16. Some of the animation objects in iOS use selectors to trigger a method when the animation completes.
6.16 Looking at one of the methods that sets up a timer in iOS, using the NSTimer object.
Selectors are part of a system called target-action. This is another uncomplicated part of iOS, though the official documentation tries hard to persuade you otherwise.
Target-Action simply means you can specify a target object as well as a target method. In the timer example, you plug a pointer to your ...