A protocol that a class must adopt to allow appearance customization using the UIAppearance API.


@protocol UIAppearanceContainer


To participate in the appearance proxy API, tag appearance property accessor methods in your header with UI_APPEARANCE_SELECTOR.

Appearance property accessor methods must be of the form:

- (PropertyType)propertyForAxis1:(IntegerType)axis1 axis2:(IntegerType)axis2 … axisN:(IntegerType)axisN;
- (void)setProperty:(PropertyType)property forAxis1:(IntegerType)axis1 axis2:(IntegerType)axis2 … axisN:(IntegerType)axisN;

You may have no axes or as many as you like for any property.

The property type may be any standard iOS type: id, NSInteger, NSUInteger, CGFloat, CGPoint, CGSize, CGRect, UIEdgeInsets or UIOffset. Axis parameter values must be either NSInteger or NSUInteger. UIKit throws an exception if other types are used in the axes.

For example, UIBarButtonItem defines these methods:



Appearance Property Selector Tag

A tag to mark a method that participates in the appearance proxy API.

See Also

Appearance Proxies


A collection of methods that gives you access to the appearance proxy for a class.