This article's factual accuracy may be compromised due to out-of-date information. The reason given is: Substantial updates are needed to account for additional frameworks added in newer iOS versions. Please help update this article to reflect recent events or newly available information.(September 2024)
UIKit provides an abstraction layer of iOS, the operating system for the iPhone, iPod Touch, and iPad. UIKit is insipired by the AppKit found in the macOSCocoa API toolset and, like it, is primarily written in the Objective-C language. UIKit allows the use of hardware and features that are not found in macOS computers and are thus unique to the iOS range of devices. Just like AppKit, UIKit follows a Model–View–Controller (MVC) software architecture.
UIKit contains a different set of graphical control elements from AppKit. Tools for developing applications based on UIKit are included in the iOS SDK.
UIKit in relation to other layers
iOS, watchOS, and tvOS technologies can be seen as a set of layers, with UIKit at the highest level and the core operating system / kernel at the bottom.
A hierarchical view of the iOS, watchOS, and tvOS technologies can be shown as follows:
UIKit
Media / Application Services
Core Services
Core OS / iOS kernel
Main features
Some of the main features and technologies of UIKit are:
App Extension
Data Management
Handoff
Document Picker
AirDrop
TextKit
UIKit Dynamics
Multitasking
Auto Layout
Storyboards
UI State Preservation
Apple Push Notification Service
Local Notifications
Gesture Recognisers
Standard System View Controllers
Main frameworks
UIKit provides the key frameworks for developing applications on devices running iOS, and is based atop Foundation Kit. Other frameworks built by Apple that complement AppKit are:
Various efforts have tried to bring UIKit to macOS:
Chameleon is a port of UIKit to macOS from 2014.[4]
ZeeZide's UXKit is a more recent port of UIKit to macOS. It exists a layer above AppKit and UIKit.[5]
Apple used a "UXKit" private framework for a 2015 version of Photos.app.[6]
Apple made the bridge more official with the "iosMac" or "Marzipan" project in 2018, which put an "iOSSupport" directory full of iOS frameworks in macOS Mojave. They were originally restricted from developer use[7] and was finally made official with the release of Mac Catalyst in 2019.[8]