---
title: "SwiftUI no iPhone Duo: layout dirigido por largura"
description: "Como migrar de checagens de dispositivo para layouts baseados na largura real da tela."
canonical: "https://ronanrodrigo.dev/notes/layout-swiftui-iphone-duo"
markdown: "https://ronanrodrigo.dev/notes/layout-swiftui-iphone-duo.md"
last-updated: "2026-10-05"
---
## SwiftUI no iPhone Duo: layout dirigido por largura

Adaptar layouts SwiftUI a dispositivos dobráveis exige abandonar checagens baseadas no dispositivo e olhar as dimensões reais da tela. O autor relata como redesenhou seu app para o iPhone Duo, cobrindo grades adaptativas, detecção da dobra, troca de câmera e testes sem hardware físico.

- **Detecção de dispositivo**: evite `userInterfaceIdiom`, `isIPad` e `isIPhone` para decidir layout — o iPhone Duo se reporta como `.phone` mesmo aberto em um display do tamanho de iPad.
- **Layout adaptativo**: use size classes para escolher entre navegação lateral e por abas, e a largura medida do container para calcular as colunas da grade dinamicamente. Isso também resolve problemas de layout no Slide Over do iPad.
- **Dobra**: use `reservedRegions(kind: .division, options: .includeInactive)` da UIKit via `UIViewRepresentable`, consultando em `layoutSubviews` e publicando o resultado.

[Acesse a fonte original](https://www.wesleymatlock.com/iphone-duo-swiftui-width-driven-layout/)
