An outlet collection is an NSArray instance variable (in code) matched (in a nib) by multiple connections to objects of the same type.
For example, suppose a class contains this property declaration:
@property IBOutletCollection(UIButton) NSArray* buttons;
Note the rather odd syntax: the term IBOutletCollection is accompanied by parentheses containing the name of a class, without an asterisk. The property itself is declared as an NSArray.
The outcome is that, in the nib editor, using an instance of this class as a source object, you can form multiple buttons outlets, each one connected to a different UIButton object in the nib. When the nib loads, those UIButton instances become the elements of the NSArray buttons; the order in which the outlets are formed is the order of the elements in the array.
In Mac OS X and iPhone OS v3.3 and earlier, you can connect an outlet to only a single object.However, starting with iPhone OS v3.4, you can connect an outlet to multiple objects. To do so, use the IBOutletCollection keyword.