Building adaptive layouts for iPhone Duo with ArrangementView
Apple's developer documentation is clear: stop hardcoding layouts for specific device poses. Here is how ArrangementView and UIArrangementViewController actually work, based on what we have seen published so far.
The new container: ArrangementView
In SwiftUI, the primary tool for adaptive layouts on iPhone Duo is ArrangementView, a new container introduced with the iOS 27.1 SDK. UIKit developers get the equivalent as UIArrangementViewController. Both manage primary and secondary content areas and automatically adjust them based on the fold and any reserved regions the system defines, rather than requiring you to branch your layout code on device state.
This matters because iPhone Duo has two genuinely different displays — a 5.4-inch outer display and a 7.6-inch inner display — plus a Split View mode on the inner display that divides it into two fixed panes. A layout system built around explicit device checks would need to handle every combination separately. ArrangementView is designed to absorb that complexity for you.
Reserved regions instead of hardcoded coordinates
The second piece of the puzzle is ReservedRegion, exposed through GeometryProxy.reservedRegions(kind:) in SwiftUI and UIViewReservedRegion in UIKit. These let you query hardware-specific areas — such as the fold itself or a camera occlusion — by kind, for example .division or .occlusion, rather than hardcoding pixel coordinates that would break the moment Apple ships a second-generation device with a different hinge geometry.
What Apple explicitly warns against
According to Apple's guidance, you should avoid hardcoding layouts based on orientation or a reference to the main screen. Concretely, that means retiring patterns like checking UIScreen.main directly and branching logic on portrait versus landscape as a proxy for fold state. Instead, the guidance points developers toward size classes and dynamic scene geometry queried at runtime.
Where this leaves existing apps
If your app already uses size classes and standard system containers like NavigationSplitView, you are closer to compliant than you might think — the underlying pattern iOS has pushed for years turns out to be exactly what iPhone Duo needs. If your app hardcodes screen dimensions or checks device idiom directly, that is the part worth prioritizing first.
For the broader picture of why this matters to end users, see our explainer on why some apps still show black bars in Split View — that visible symptom is exactly what happens when an app has not yet adopted ArrangementView and reserved regions. And if you are setting up your development environment for this work, start with our guide to iOS 27, Xcode 27.1 beta, and macOS Tahoe 26.6.
From the maker
Get PromptSlate Studio on the App Store
Write, prompt and record in one focused workspace. Out now — $9.99 one-time, no subscription. Every download supports independent development of new apps.
See PromptSlate Studio details · Also in the works: DuoSketch
Spotted something to fix, or an app we should cover?
This article is independent research, cross-checked against Apple's developer documentation. If something's out of date, or you know an app that deserves a look, let us know — and if you're building for iPhone Duo yourself, we're happy to talk.
hola@ayudantedigital.es