From iPhone Development Wiki
Jump to: navigation, search
Public Framework
Availabile 1.0 – present
Class Prefix UI
Headers [headers.cynder.me]

UIKit is a high-level Objective-C framework that manages the graphical front-end of the iPhoneOS. It is a public framework, and therefore its documentation can be found on Apple's iPhone Dev Center. Nevertheless, this is only a small part of the whole UIKit.

Parameters for UIKit applications

UIKit recognizes the following these special command-line flags:

Flag Purpose
-BuildDefaultPNG Write the default PNG image to ~/Library/Caches/AppSnapshots/BundleID.png
(by calling -[UIApplication _writeApplicationDefaultPNGSnapshot] on start up).
-RegisterForSystemEvents Allow this app to receive system events which normally should be received by SpringBoard.


Firmware 2.0 2.1 2.2 3.0 3.1 3.2 4.0 4.1 4.2 4.2.6 4.3
SourceCache version 738 747.36 747.36.52 963.10 984.38 1145.66 1261.6 1262.60.3 1447.6.4 1447.28 1448.89
dylib version 229 747.19 752 819 1000 1100 1200 1300 1400 1410 1500

Environment variables

UIKit recognizes the following environment variables

Name Purpose
UIKIT_PACKED_IMAGE_MAPS An integer: 0 to disable mapped images (.artwork files) entirely; 1 for normal use; 2 to log operations regarding mapped images.
KB_RECORDING_ENABLED Whether to enable keyboard recording or not. (The KeyboardRecordingEnabled key of the com.apple.Preferences preferences must be set to true for this to be effective.)
CF_BENCH_MODE Cover Flow benchmark mode. Available values are:
  • Disabled
  • NoAnimation
  • JustSitThere
  • FastTap
  • ScrubBackAndForth
  • LongScrub
  • ShortScrub
  • ScrubAndWait
  • FlipCover
CF_BENCH_IMAGE_MODE Cover Flow benchmark image mode. Available values are:
  • NormalImage
  • SingleImage
  • NoImage
Other Cover Flow benchmark parameters.
Some Cover Flow settings.