<!--
{
  "documentType" : "article",
  "framework" : "BundleResources",
  "identifier" : "/documentation/BundleResources/user-interface",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "User interface"
}
-->

# User interface

Configure an app’s scenes, storyboards, icons, fonts, and other user interface elements.

## Discussion

You define the user interface that your app presents during normal operation with a combination of code and storyboards. However, the system needs to know a few things about your app’s user interface before execution begins. For example, on some platforms, you have to specify what device orientations your app supports and what the system should display while your app launches. You add keys to your app’s [`Information Property List`](/documentation/BundleResources/Information-Property-List) file to control certain aspects of its user interface.

## Topics

### Main user interface

[`UIApplicationSceneManifest`](/documentation/BundleResources/Information-Property-List/UIApplicationSceneManifest)

The information about the app’s scene-based life-cycle support.

[`UIApplicationPreferredDefaultSceneSessionRole`](/documentation/BundleResources/Information-Property-List/UIApplicationPreferredDefaultSceneSessionRole)

The preferred initial scene session role for your app.

[`NSMainStoryboardFile`](/documentation/BundleResources/Information-Property-List/NSMainStoryboardFile)

The name of an app’s storyboard resource file.

[`UIMainStoryboardFile`](/documentation/BundleResources/Information-Property-List/UIMainStoryboardFile)

The name of the app’s main storyboard file.

[`NSMainNibFile`](/documentation/BundleResources/Information-Property-List/NSMainNibFile)

The name of an app’s main user interface file.

[`LSUIElement`](/documentation/BundleResources/Information-Property-List/LSUIElement)

A Boolean value indicating whether the app is an agent app that runs in the background and doesn’t appear in the Dock.

[`UISupportsTrueScreenSizeOnMac`](/documentation/BundleResources/Information-Property-List/UISupportsTrueScreenSizeOnMac)

A Boolean value that indicates whether your iPad app supports arbitrary screen sizes and resolutions when running on a Mac.

### Launch interface

[`UILaunchScreen`](/documentation/BundleResources/Information-Property-List/UILaunchScreen)

The user interface to show while an app launches.

[`UILaunchScreens`](/documentation/BundleResources/Information-Property-List/UILaunchScreens)

The user interfaces to show while an app launches in response to different URL schemes.

[`UILaunchStoryboardName`](/documentation/BundleResources/Information-Property-List/UILaunchStoryboardName)

The filename of the storyboard from which to generate the app’s launch image.

[`UILaunchStoryboards`](/documentation/BundleResources/Information-Property-List/UILaunchStoryboards)

The launch storyboard to use to generate a launch image when your app opens from a supported scheme.

[`LSUIPresentationMode`](/documentation/BundleResources/Information-Property-List/LSUIPresentationMode)

The initial user-interface mode for the app.

[`UILaunchToFullScreenByDefaultOnMac`](/documentation/BundleResources/Information-Property-List/UILaunchToFullScreenByDefaultOnMac)

A Boolean value that indicates whether to launch your iPad app in full-screen mode when running on a Mac.

### Icons

[`CFBundleIcons`](/documentation/BundleResources/Information-Property-List/CFBundleIcons)

Information about all of the icons used by the app.

[`CFBundleIconFiles`](/documentation/BundleResources/Information-Property-List/CFBundleIconFiles)

The names of the bundle’s icon image files.

[`CFBundleIconFile`](/documentation/BundleResources/Information-Property-List/CFBundleIconFile)

The file containing the bundle’s icon.

[`CFBundleIconName`](/documentation/BundleResources/Information-Property-List/CFBundleIconName)

The name of the asset that represents the app icon.

[`UIPrerenderedIcon`](/documentation/BundleResources/Information-Property-List/UIPrerenderedIcon)

A Boolean value that indicates whether the app’s icon contains a shine effect.

### Orientation

[`UIInterfaceOrientation`](/documentation/BundleResources/Information-Property-List/UIInterfaceOrientation)

The initial orientation of the app’s user interface.

[`UISupportedInterfaceOrientations`](/documentation/BundleResources/Information-Property-List/UISupportedInterfaceOrientations)

The interface orientations supported by your app.

[`UIPreferredDefaultInterfaceOrientation`](/documentation/BundleResources/Information-Property-List/UIPreferredDefaultInterfaceOrientation)

A string that indicates the preferred initial interface orientation for iPad and iPhone apps running on visionOS.

### Styling

[`UIDesignRequiresCompatibility`](/documentation/BundleResources/Information-Property-List/UIDesignRequiresCompatibility)

A Boolean value that indicates whether the system runs the app using a compatibility mode for UI.

[`UIUserInterfaceStyle`](/documentation/BundleResources/Information-Property-List/UIUserInterfaceStyle)

The user interface style for the app.

[`UIViewEdgeAntialiasing`](/documentation/BundleResources/Information-Property-List/UIViewEdgeAntialiasing)

A Boolean value that indicates whether Core Animation layers use antialiasing when drawing a layer that isn’t aligned to pixel boundaries.

[`UIWhitePointAdaptivityStyle`](/documentation/BundleResources/Information-Property-List/UIWhitePointAdaptivityStyle)

The app’s white-point adaptivity style, enabled on devices with True Tone displays.

[`UIViewGroupOpacity`](/documentation/BundleResources/Information-Property-List/UIViewGroupOpacity)

A Boolean value that indicates whether Core Animation sublayers inherit the opacity of their superlayer.

[`UIRequiresFullScreenIgnoredStartingWithVersion`](/documentation/BundleResources/Information-Property-List/UIRequiresFullScreenIgnoredStartingWithVersion)

A string value that specifies a system version after which the system ignores the requires full screen key.

[`UISupportsAssistiveAccess`](/documentation/BundleResources/Information-Property-List/UISupportsAssistiveAccess)

A Boolean value that indicates if an iOS or iPadOS app supports Assistive Access.

[`UISupportsFullScreenInAssistiveAccess`](/documentation/BundleResources/Information-Property-List/UISupportsFullScreenInAssistiveAccess)

A Boolean value that indicates if an iOS or iPadOS app appears as full screen in Assistive Access.

[`NSPrefersDisplaySafeAreaCompatibilityMode`](/documentation/BundleResources/Information-Property-List/NSPrefersDisplaySafeAreaCompatibilityMode)

A Boolean value that indicates whether the app prefers to run in compatibility mode when necessary.

[`NSAccentColorName`](/documentation/BundleResources/Information-Property-List/NSAccentColorName)

The name of a color in an asset catalog to use for a target’s global accent color.

[`NSWidgetBackgroundColorName`](/documentation/BundleResources/Information-Property-List/NSWidgetBackgroundColorName)

The name of a color in an asset catalog to use for a widget’s configuration interface.

### Fonts

[`ATSApplicationFontsPath`](/documentation/BundleResources/Information-Property-List/ATSApplicationFontsPath)

The location of a font file or folder of fonts in the bundle’s Resources folder.

[`UIAppFonts`](/documentation/BundleResources/Information-Property-List/UIAppFonts)

App-specific font files located in the bundle and that the system loads at runtime.

### Status bar

[`UIStatusBarHidden`](/documentation/BundleResources/Information-Property-List/UIStatusBarHidden)

A Boolean value that indicates whether the system initially hides the status bar when the app launches.

[`UIStatusBarStyle`](/documentation/BundleResources/Information-Property-List/UIStatusBarStyle)

The style of the status bar as the app launches.

[`UIStatusBarTintParameters`](/documentation/BundleResources/Information-Property-List/UIStatusBarTintParameters)

The status bar tint.

[`UIViewControllerBasedStatusBarAppearance`](/documentation/BundleResources/Information-Property-List/UIViewControllerBasedStatusBarAppearance)

A Boolean value that indicates whether the system bases the appearance of the status bar on the style preferred by the current view controller.

### Text fields

[`NSAutoFillRequiresTextContentTypeForOneTimeCodeOnMac`](/documentation/BundleResources/Information-Property-List/NSAutoFillRequiresTextContentTypeForOneTimeCodeOnMac)

A Boolean value that indicates whether text fields receive AutoFill of one-time codes only if they adopt the suitable content type.

### Pointer interactions

[`UIApplicationSupportsIndirectInputEvents`](/documentation/BundleResources/Information-Property-List/UIApplicationSupportsIndirectInputEvents)

A Boolean value indicating that the app generally supports indirect input mechanisms.

### Preferences

[`NSPrefPaneIconFile`](/documentation/BundleResources/Information-Property-List/NSPrefPaneIconFile)

The name of an image file used to represent a preference pane in the System Preferences app.

[`NSPrefPaneIconLabel`](/documentation/BundleResources/Information-Property-List/NSPrefPaneIconLabel)

The name of a preference pane displayed beneath the preference pane icon in the System Preferences app.

### Graphics

[`UIAppSupportsHDR`](/documentation/BundleResources/Information-Property-List/UIAppSupportsHDR)

A Boolean value that indicates whether the app supports HDR mode on Apple TV 4K.

[`NSHighResolutionCapable`](/documentation/BundleResources/Information-Property-List/NSHighResolutionCapable)

A Boolean value indicating whether the Cocoa app supports high-resolution displays.

[`NSSupportsAutomaticGraphicsSwitching`](/documentation/BundleResources/Information-Property-List/NSSupportsAutomaticGraphicsSwitching)

A Boolean value indicating whether an OpenGL app may utilize the integrated GPU.

[`GPUEjectPolicy`](/documentation/BundleResources/Information-Property-List/GPUEjectPolicy)

The preferred system action when an external GPU is connected from the system.

[`GPUSelectionPolicy`](/documentation/BundleResources/Information-Property-List/GPUSelectionPolicy)

The app’s preference for whether it wants to use external graphics processors.

[`CADisableMinimumFrameDurationOnPhone`](/documentation/BundleResources/Information-Property-List/CADisableMinimumFrameDurationOnPhone)

A Boolean value that allows your app to access frame rates higher than the system’s default.

### QuickLook

[`QLNeedsToBeRunInMainThread`](/documentation/BundleResources/Information-Property-List/QLNeedsToBeRunInMainThread)

A Boolean value indicating whether a Quick Look app’s generator can be run in threads other than the main thread.

[`QLPreviewHeight`](/documentation/BundleResources/Information-Property-List/QLPreviewHeight)

A hint at the height, in points, of a Quick Look app’s previews.

[`QLPreviewWidth`](/documentation/BundleResources/Information-Property-List/QLPreviewWidth)

A hint at the width, in points, of a Quick Look app’s previews.

[`QLSupportsConcurrentRequests`](/documentation/BundleResources/Information-Property-List/QLSupportsConcurrentRequests)

A Boolean value indicating whether a Quick Look app’s  generator can handle concurrent thumbnail and preview requests.

[`QLThumbnailMinimumSize`](/documentation/BundleResources/Information-Property-List/QLThumbnailMinimumSize)

The minimum size, in points, along one dimension of thumbnails for a Quick Look app’s generator.

### Automatic observation tracking

[`NSObservationTrackingEnabled`](/documentation/BundleResources/Information-Property-List/NSObservationTrackingEnabled)

A Boolean value that indicates whether the system automatically tracks changes to observable objects in macOS 15.

[`UIObservationTrackingEnabled`](/documentation/BundleResources/Information-Property-List/UIObservationTrackingEnabled)

A Boolean value that indicates whether the system automatically tracks changes to observable objects in iOS 18.

### Deprecated keys

[`UILaunchImages`](/documentation/BundleResources/Information-Property-List/UILaunchImages)

A dictionary containing information about launch images.

[`UIRequiresFullScreen`](/documentation/BundleResources/Information-Property-List/UIRequiresFullScreen)

A Boolean value that indicates whether the system puts an iPad app into a compatibility mode that opts the app out of multitasking and dynamic resizing.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)