Update your apps to use new features, and test your apps against changes.
Read these notes when you're building interfaces in Xcode 10.
Control-dragging from Interface Builder to a Swift source file defaults to creating
@IBOutletwhen the insertion point is above the first method in a class, and
Notification categories now have a "Handles Grouping" property, which allows notifications to be coalesced.
Static notification interfaces now support connecting a subtitle label outlet.
The "Stack" button in the canvas bar has been replaced with a pop-up menu containing all embedding options for the selection. (38201831)
The menu for choosing a font family in the Attributes inspector now renders a preview of each font. (37157540)
NSVisualclass's inherited appearance inspector property has a backwards deployment option of Vibrant Light or Vibrant Dark for previous versions of macOS. (40536518)
NSVisualwill backwards deploy new standard semantic 10.14 materials to appropriate materials for prior OSes. (40511407)
NSToolbarcontaining an image or custom view has an Automatic size option in the Size inspector. Use this option to automatically manage the minimum and maximum width and height of the toolbar item, for example when the item contains a segmented control.
Support for Large Title font text style (
UIFont) on iOS 11 and later, and on watchOS 5. (33150633)
Text Style Large Title
In the Identity inspector, the localization comment field has been changed to plain text. It is still stored in the document as an attributed string to maintain compatibility with earlier versions of Xcode. (39856810)
The exception "Impossible to set up layout with view hierarchy unprepared for constraint." has improved diagnostics. (42514606)
UILabelinspector property "Marquee on Ancestor Focus" for controlling scrolling behavior.
The Editor > Embed In menu item allows embedding in a tightly wrapped view that doesn't add any margins to the selected content. (11515741)
Inspector color pickers now use a standard pop-up button. The color swatch can be dragged by holding the Option key. (38582636)
NSViewsubclasses are rendered with the appropriate NSAppearance for their use in the canvas.
The macOS library now contains an "Import From Device" menu item for Continuity Camera. Its submenu will be auto-populated at runtime on macOS 10.14 and higher; on previous versions, it will be disabled and have no submenu. (41474755)
The new Volume control for watchOS 5 now allows setting tint color. (40830006)
.xibfile last saved in a format prior to Xcode 5 now prompts for confirmation, and automatically upgrades the document to a modern format. (37691996)
Support for the new Dynamic Interactive notification interfaces.
Scrolling performance, especially in very large storyboards, is improved. (34904204)
When a Mac XIB or storyboard is opened in Xcode 10,
NSTextthat have default colors will be changed to use new recommended colors. The text color and insertion point color change from black to
text, and the background color changes from white to
text. These should appear the same on earlier releases while also adapting to appearances on macOS 10.14. Editable
NSTextinstances have their text color changed from
control. These changes only apply when opening and saving the document from within Xcode.
Discouraged uses of Vibrant Light and Vibrant Dark appearance are now reported.
NSVisualare exempted. (42036478)
Support for the new "Now Playing" and "Volume" interface objects.
Controls using named colors from an asset catalog now update as the value of the color changes. (37613468)
Image and color inspector properties that reference an asset catalog resource have a navigation button to jump to that resource. Option + click will show the resource in the Assistant Editor. (39661055)
Support for new
NSVisualmaterials introduced in macOS 10.14.
Some binaries used by Interface Builder have been renamed for better consistency. Instead of "Interface Builder Cocoa Touch Tool", "Interface Builder WatchKit Tool", and "IBAppleTVTool", they are now called "IBAgent-[platform]". (35400833)
On macOS 10.14, the Device Bar and Preview assistant editor allow designing for and previewing in Light Appearance and Dark Appearance.
NSGrid, which manages Auto Layout constraints for its content in a two-dimensional table layout.
NSGridis backward deployable to macOS 10.12, or macOS 10.13.4 when using merged cells.
Canvas rendering now happens in parallel, and scales based on demand and hardware to improve the performance of edit operations, particularly for large scenes. (36999759)
Support for setting accessibility attributes on
NSTexthas multiple entries in the object library. This separates configurations appropriate for user interface elements that should adapt to the system appearance, and document content which has a fixed appearance that does not change with the system setting, including for print content.
Displaying NSOpenGLView instances in Interface Builder when running on macOS 10.13 may result in a crash. (43849153)
Fixed an issue with rendering table view cells that are scrolled out of view at design time. (41213048)
Fixed a problem where issues for different objects were incorrectly coalesced. (13162286)
Fixed an issue where clicking a build issue wouldn't select the referenced object in the canvas. (14779509)
Fixed an issue where storyboard view controllers would change their relative placement unexpectedly while navigating between code and the Interface Builder canvas. (40925441)
Fixed an issue that would cause the view hierarchy to not render if the canvas area was scrolled before presenting the view hierarchy. (27635197)
Fixed an issue where connect-to-source mistakenly allowed adding code to Swift generated interfaces. (35263074)
When adding constraints with the control-drag canvas menu, shift-clicking on multiple items no longer requires clicking an "Add Constraints" menu item, simply clicking outside the menu now works. (22970158)
Improved performance compiling documents, particularly those containing multiple
@IBDesignableviews now build using the new build system when it is enabled. (31433718)
Typing delete (⌫) when an edge is selected in the constraint filter of the Size inspector now removes the applicable constraints, rather than the view itself. (25373426)
Custom fonts are supported in watchOS dynamic notifications. (35843402)
Fixed an issue where
@IBDesignableviews would not build when the project includes a WatchKit target. (36281806)
Fixed a problem with scenes drawing blank when table view cells are scrolled beyond the
When adding constraints with the control-drag canvas menu, shift-clicking on multiple items now adds them to the canvas instantly, rather than after the menu is closed. (18991966)
Embedding views in macOS documents now supports