iOS Developer Library — Pre-Release

Developer

UIKit Framework Reference UIAppearanceContainer Protocol Reference

Options
Deployment Target:

On This Page
Language:

UIAppearanceContainer

Inheritance


Not Applicable

Import Statement


Swift

import UIKit

Objective-C

@import UIKit;

Availability


Available in iOS 5.0 and later.

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

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:

Swift

  • func propertyForAxis1(axis1: IntegerType, axis2: IntegerType, axisN: IntegerType) -> PropertyType
  • func setProperty(property: PropertyType, forAxis1 axis1: IntegerType, axis2: IntegerType)

Objective-C

  • - (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:

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

    Declaration

    Objective-C

    #define UI_APPEARANCE_SELECTOR

    Constants

    • UI_APPEARANCE_SELECTOR

      UI_APPEARANCE_SELECTOR

      Marks a method that participates in the appearance proxy API.

      Available in iOS 5.0 and later.