On this page · 8 sections
Summary. The interface changes that arrived with iPhone Duo on 9 September 2026, shipping 23 October 2026 on iOS 27.1 at $1,999, are more interesting than the hinge, because several of them change how a bar, a tab or an alert behaves in apps that have nothing to do with foldables. Toolbars and tab bars can now lay out vertically along the side. Split View puts two apps side by side on iPhone for the first time. The Dynamic Island has been redesigned to sit vertically on the edge of both displays. This piece walks each change, what Apple actually says about it, and which ones you have to write code for.
The useful distinction throughout: some of these you inherit by rebuilding, and some you have to opt into or actively opt out of.
Bars move to the side, and there is an API surface behind it
The headline change is that navigation, toolbar and tab bar controls can rotate onto a vertical axis. Apple's rationale in Raise the bar with iPhone Duo is about space: the wider aspect ratio gives apps more horizontal room, so moving controls to the side preserves vertical space for content and puts controls within easier reach.
You opt in by rebuilding against the latest SDKs and using bars provided by navigation containers. That last part is a real constraint. Apple states that in UIKit you should prefer UINavigationController and UITabBarController over custom UIToolbar, UINavigationBar or UITabBar instances, "whose content isn't considered." An app with hand-rolled bars gets nothing here.
// UIKit — content from a custom UIToolbar won't be considered.
// Prefer UINavigationController and UITabBarController,
// which manage their own bars.
let toolbar = UIToolbar()
toolbar.items = [...]
Navigation, toolbar and tab bar controls share one region in this layout. Apple's mental model is to imagine rotating them ninety degrees into a vertical stack. Two consequences worth knowing before you debug them: in split views only the detail column participates and inspectors do not get their own bar, and because the bar is aligned with the hardware it stays on the same side in right-to-left languages.
Items are chosen for the vertical axis by their content
The system decides placement from what an item contains. Vertical bars have a fixed width and flexible item height, so they suit symbol-only items. Apple's rule: items with an icon go vertical, while text-only items stay horizontal. Always provide a title regardless, because the system uses it in overflow menus and expanded forms.
Where the default is wrong, the new AxisBehavior API overrides it:
// SwiftUI
.toolbar {
ToolbarItem {
CompassView()
}
.axisBehavior(.verticalPreferred)
}
// UIKit
let item = UIBarButtonItem(customView: CompassView())
item.axisBehavior = .verticalPreferred
Custom or complex views stay horizontal by default, so .verticalPreferred is how you tell the system your view does have a vertical representation. The reverse matters too. An item that swaps between a symbol and text, such as a select-or-done button, should be pinned horizontal so it does not jump axes mid-interaction:
// SwiftUI
.axisBehavior(.horizontalOnly)
// UIKit
item.axisBehavior = .horizontalOnly
A neat trick Apple calls out: a badge can convert a text-and-symbol item into a symbol-only one, which makes it eligible to go vertical. The badge API arrived in iOS 26.
// SwiftUI
InboxButton()
.badge(7)
// UIKit
item.badge = .count(7)
The judgement call is whether the text merely reinforces the symbol or carries standalone information. Apple's example of text worth keeping is a cart button showing a dollar amount.
Detecting a vertical bar, and a documentation wrinkle
Custom views either fit the bar's fixed width or need a vertically adapted layout. You detect which situation you are in through the environment or trait:
// SwiftUI
@Environment(\.toolbarVerticalEdge) var edge
// UIKit
switch traitCollection.verticalBarEdge { ... }
Two smaller behaviours that will otherwise look like bugs: vertical bars have no scroll edge effect by default, though they do get a background when reduce transparency is enabled, and flexible spacers are zero size vertically while fixed spacers respect their minimum.
One caution on the documentation itself. Apple's session page spells one property two different ways. The written summary says leftItemSupplementsBackButton, while the code sample on the same page says navigationItem.leftItemsSupplementBackButton. The same pattern repeats with "preferredVerticalBar behavior" in prose against preferredVerticalBarBehavior in code. Trust the code samples, since those are the spellings that match the shipping API, and do not lose an afternoon to a transcription error in a summary.
Overflow is now something you design
Items overflow more often on the outer display in landscape, or when the keyboard competes for space. By default toolbars compress before the tab bar, which suits navigation-focused apps. Task-oriented apps may want the opposite:
// SwiftUI
.toolbarVerticalCompressionBehavior(.prefersToolbarItems)
// UIKit
navigationItem.verticalBarCompressionBehavior = .prefersBarItems
Items overflow bottom to top unless you say otherwise, and visibilityPriority gives you control over the order. Apple's guidance is to assign priorities to groups first and then to items within them, keeping frequently used actions such as Compose or New Note among the last to overflow, and keeping status-carrying controls like badged items visible to preserve glanceability.
// SwiftUI
.visibilityPriority(.high)
// UIKit
item.visibilityPriority = .high
If you have a custom overflow menu, fold it into the system one with ToolbarOverflowMenu or additionalOverflowItems, and reserve the ellipsis for overflow only.
When to turn it off
Apple names two cases where vertical bars are the wrong answer: a single-page app with a bottom-heavy layout, Calculator being the example, where content expands better horizontally; and a sheet with a single control such as a close button, where the reduced space is not worth it.
// SwiftUI
.toolbarVerticalBehavior(.disabled)
// UIKit
override var preferredVerticalBarBehavior: UIVerticalBarBehavior {
.disabled
}
Split View arrives on iPhone, and you cannot opt out
Apple's announcement states that "Split View allows users to open two apps side by side on iPhone for the first time." Users can swap between apps, open two windows of the same app such as Safari, talk to Siri while looking at content on the other side, and save app pairs.
For developers the important part is participation. All apps take part in multitasking on iPhone Duo. There is no entitlement to request and no flag to set, which means the first time many apps are ever resized will be in production. If your app already resizes on iPad or under iPhone Mirroring, you are in good shape; if it has only ever run full screen at a fixed size, this is the change most likely to surface a latent layout bug.
iPhone Duo is also the first iPhone to support multiple instances of an app's UI. One asymmetry to design around: new windows cannot be created on the outer display, which is reserved for the inner one. Handle errors when requesting scenes, and prefer the UIWindowSceneActivation action, which hides itself automatically when new windows are unavailable.
The Dynamic Island turns sideways
Apple states the Dynamic Island "is also redesigned to fit vertically on the side of the outer and inner displays, and expands to show Live Activities and alerts." The status bar changed alongside it, into "a circular, flexible system that nestles into the corner of the screen."
Nothing in Apple's published material requires code changes for a standard Live Activity. What it does require is a visual check: if you have designed a Live Activity around a horizontal pill, it now renders in a vertical container, and the compact presentations you tuned will not be composed the same way.
Home Screen and StandBy
Two further changes that affect how people encounter your app rather than how it is built. When the device is open, the Home Screen shows two pages with Today View, a vertically scrolling list of customisable widgets, on the left. Lock Screen controls and the Dock also move to the side to maximise vertical space for content.
StandBy now engages when the device is set down on either display, "even when it's not charging", with new Calendar and Weather faces joining the existing Clock and Modular faces. If you ship widgets, both of these change your surface area, and a vertically scrolling Today View is a different placement from a grid.
What to actually do this week
Change | Inherited by rebuilding | Needs code ---|---|--- Vertical bars | Yes, if you use standard navigation containers | Custom views, axis and overflow priorities Split View | Yes, participation is automatic | Layout fixes where resizing was never tested Dynamic Island | Yes | Visual check on Live Activities Today View and StandBy | Yes | Widget review
The honest summary is that an app built on system components inherits most of this by rebuilding against iOS 27.1, and the work concentrates in custom bars, custom toolbar views and untested resizing. Our iPhone Duo readiness checklist covers the ordered version of that audit, and the adaptive layout guide covers the layout APIs underneath.
If you would rather have someone run the audit than run it yourself, tell us what your bar and navigation layer looks like at our contact page. For staffing, see hiring iOS developers.
FAQ
How eCorpIT can help
eCorpIT is a Gurugram-based engineering organisation, founded in 2021, holding CMMI Level 5, MSME and ISO 27001:2022 certifications, with senior-led iOS teams. We audit bar and navigation layers against the vertical-bar model, fix layouts that have never been resized, review Live Activities and widgets against the new presentations, and take this on as a bounded pass or as embedded engineers inside your squad. Tell us what your navigation layer looks like today at our contact page.
References
_Last updated: 12 September 2026._