Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What properties can I set via an UIAppearance proxy?

What properties can I set via an UIAppearance proxy? Apple's UIKit documentation does not list them. Is there a list of these properties?

like image 480
Emile Cormier Avatar asked Feb 24 '12 01:02

Emile Cormier


1 Answers

Properties that can be set via UIAppearance are tagged with UI_APPEARANCE_SELECTOR in the corresponding header file.

To generate a list of properties tagged with UI_APPEARANCE_SELECTOR, you can use the following unix commands in a terminal:

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer‌​/SDKs/iPhoneOS5.1.sdk/System/Library/Frameworks/UIKit.framework/Headers grep -H UI_APPEARANCE_SELECTOR ./* | sed 's/ __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_5_0) UI_APPEARANCE_SELECTOR;//' 

Here is a list that I compiled using the above commands. This is for the 5.0 SDK. The corresponding getter methods have been omitted for brevity.


UIActivityIndicatorView

@property (readwrite, nonatomic, retain) UIColor *color 

UIBarButtonItem

@property(nonatomic,retain) UIColor *tintColor - (void)setBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics - (void)setBackgroundVerticalPositionAdjustment:(CGFloat)adjustment forBarMetrics:(UIBarMetrics)barMetrics  - (void)setTitlePositionAdjustment:(UIOffset)adjustment forBarMetrics:(UIBarMetrics)barMetrics  - (void)setBackButtonBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics - (void)setBackButtonTitlePositionAdjustment:(UIOffset)adjustment forBarMetrics:(UIBarMetrics)barMetrics - (void)setBackButtonBackgroundVerticalPositionAdjustment:(CGFloat)adjustment forBarMetrics:(UIBarMetrics)barMetrics   [iOS 6.0] - (void)setBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state style:(UIBarButtonItemStyle)style barMetrics:(UIBarMetrics)barMetrics [iOS 6.0] 

UIBarItem

- (void)setTitleTextAttributes:(NSDictionary *)attributes forState:(UIControlState)state 

UINavigationBar

@property(nonatomic,retain) UIColor *tintColor @property(nonatomic,copy) NSDictionary *titleTextAttributes - (void)setBackgroundImage:(UIImage *)backgroundImage forBarMetrics:(UIBarMetrics)barMetrics - (void)setTitleVerticalPositionAdjustment:(CGFloat)adjustment forBarMetrics:(UIBarMetrics)barMetrics  [iOS 6.0] @property(nonatomic,retain) UIImage *shadowImage  [iOS 7.0] @property(nonatomic,retain) UIColor *barTintColor  - (void)setBackgroundImage:(UIImage *)backgroundImage forBarPosition:(UIBarPosition)barPosition barMetrics:(UIBarMetrics)barMetrics  - (UIImage *)backgroundImageForBarPosition:(UIBarPosition)barPosition barMetrics:(UIBarMetrics)barMetrics  @property(nonatomic,retain) UIImage *backIndicatorImage  @property(nonatomic,retain) UIImage *backIndicatorTransitionMaskImage  

UIPageControl

[iOS 6.0] @property(nonatomic,retain) UIColor *pageIndicatorTintColor @property(nonatomic,retain) UIColor *currentPageIndicatorTintColor 

UIProgressView

@property(nonatomic, retain) UIColor* progressTintColor     @property(nonatomic, retain) UIColor* trackTintColor     @property(nonatomic, retain) UIImage* progressImage @property(nonatomic, retain) UIImage* trackImage 

UIRefreshControl

[iOS 6.0] @property (nonatomic, retain) UIColor *tintColor @property (nonatomic, retain) NSAttributedString *attributedTitle 

UISearchBar

@property(nonatomic,retain) UIImage *backgroundImage @property(nonatomic,retain) UIImage *scopeBarBackgroundImage @property(nonatomic) UIOffset searchFieldBackgroundPositionAdjustment @property(nonatomic) UIOffset searchTextPositionAdjustment - (void)setSearchFieldBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state - (void)setImage:(UIImage *)iconImage forSearchBarIcon:(UISearchBarIcon)icon state:(UIControlState)state - (void)setScopeBarButtonBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state  - (void)setScopeBarButtonDividerImage:(UIImage *)dividerImage forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState - (void)setScopeBarButtonTitleTextAttributes:(NSDictionary *)attributes forState:(UIControlState)state - (void)setPositionAdjustment:(UIOffset)adjustment forSearchBarIcon:(UISearchBarIcon)icon  [iOS 7.0] @property(nonatomic,retain) UIColor *barTintColor  - (void)setBackgroundImage:(UIImage *)backgroundImage forBarPosition:(UIBarPosition)barPosition barMetrics:(UIBarMetrics)barMetrics  - (UIImage *)backgroundImageForBarPosition:(UIBarPosition)barPosition barMetrics:(UIBarMetrics)barMetrics  

UISegmentedControl

@property(nonatomic,retain) UIColor *tintColor UI_APPEARANCE_SELECTOR; - (void)setBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics  - (void)setDividerImage:(UIImage *)dividerImage forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetrics - (void)setTitleTextAttributes:(NSDictionary *)attributes forState:(UIControlState)state - (void)setContentPositionAdjustment:(UIOffset)adjustment forSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics 

UISlider

@property(nonatomic,retain) UIColor *minimumTrackTintColor @property(nonatomic,retain) UIColor *maximumTrackTintColor @property(nonatomic,retain) UIColor *thumbTintColor 

UIStepper

[iOS 6.0] @property(nonatomic,retain) UIColor *tintColor - (void)setBackgroundImage:(UIImage*)image forState:(UIControlState)state - (void)setDividerImage:(UIImage*)image forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState - (void)setIncrementImage:(UIImage *)image forState:(UIControlState)state - (void)setDecrementImage:(UIImage *)image forState:(UIControlState)state 

UISwitch

@property(nonatomic, retain) UIColor* onTintColor  [iOS 6.0] @property(nonatomic, retain) UIColor *tintColor @property(nonatomic, retain) UIColor *thumbTintColor @property(nonatomic, retain) UIImage *onImage @property(nonatomic, retain) UIImage *offImage 

UITabBar

@property(nonatomic,retain) UIColor *tintColor @property(nonatomic,retain) UIColor *selectedImageTintColor @property(nonatomic,retain) UIImage *backgroundImage @property(nonatomic,retain) UIImage *selectionIndicatorImage  [iOS 6.0] @property(nonatomic,retain) UIImage *shadowImage  [iOS 7.0] @property(nonatomic,retain) UIColor *barTintColor  @property(nonatomic) UITabBarItemPositioning itemPositioning  @property(nonatomic) CGFloat itemWidth  @property(nonatomic) CGFloat itemSpacing  @property(nonatomic) UIBarStyle barStyle  

UITabBarItem

- (void)setTitlePositionAdjustment:(UIOffset)adjustment 

UITableView

[iOS 6.0] @property(nonatomic, retain) UIColor *sectionIndexColor @property(nonatomic, retain) UIColor *sectionIndexTrackingBackgroundColor  [iOS 7.0] @property (nonatomic) UIEdgeInsets separatorInset  @property(nonatomic, retain) UIColor *sectionIndexBackgroundColor  

UITableViewCell

[iOS 7.0] @property (nonatomic) UIEdgeInsets separatorInset  

UITableViewHeaderFooterView

[iOS 6.0] @property(nonatomic, retain) UIColor *tintColor 

UIToolbar

@property(nonatomic,retain) UIColor *tintColor; - (void)setBackgroundImage:(UIImage *)backgroundImage forToolbarPosition:(UIToolbarPosition)topOrBottom barMetrics:(UIBarMetrics)barMetrics  [iOS 6.0] - (void)setShadowImage:(UIImage *)shadowImage forToolbarPosition:(UIToolbarPosition)topOrBottom  [iOS 7.0] @property(nonatomic,retain) UIColor *barTintColor  

(July 3, 2012): This list hasn't changed up til the most recent version of XCode (4.3.3).


(March 12, 2013): List updated for SDK 6.1. Properties that apply for iOS 6.0 (or greater) are listed under the [iOS 6.0] tag.


(Oct. 24, 2013): List updated for SDK 7.0. Properties that apply for iOS 7.0 (or greater) are listed under the [iOS 7.0] tag.

like image 65
11 revs, 2 users 89% Avatar answered Oct 06 '22 01:10

11 revs, 2 users 89%