La era del iPhone redimensionable: prepara tu app antes de septiembre
¿Cómo preparas una app de iPhone para pantallas redimensionables? El SDK contra el que enlazas es la línea que traza Apple: el Device Hub de Xcode 27 considera explícitamente que el modo de redimensionado no es compatible con apps enlazadas contra iOS 26 o anterior, y cada entrada sobre redimensionado en las notas de la versión de iOS 27 está condicionada a «compilada con el SDK de iOS 27».12 Después: audita cada supuesto de tamaño fijo (lecturas de UIScreen.main.bounds, frames codificados a mano, diseños condicionados por la orientación), apóyate en las clases de tamaño y en los contenedores de SwiftUI que se adaptan al diseño, y prueba de forma continua en las vistas previas Resizable Canvas de Xcode 27 y en el modo de redimensionado del Device Hub.2 El requisito de orientación que bloqueaba el redimensionado continuo aparece como Fixed en las notas actuales, así que el camino está despejado.1
Las betas de otoño de Apple han pasado el verano convergiendo en un solo mensaje para quienes desarrollan para iPhone: deja de dar por sentado un rectángulo fijo. La evidencia está en las herramientas y en las notas de la versión, no en los keynotes: el redimensionado llega con el enlace al SDK de iOS 27, el lienzo de vista previa se redimensiona libremente, y las notas de la versión despejaron el último obstáculo estructural a medida que maduró el ciclo de betas. Sea cual sea el hardware que se presente este otoño, el contrato de software ya cambió.
TL;DR: iOS 27 trae redimensionado continuo a las apps compiladas con el nuevo SDK; Xcode 27 incluye las superficies para probarlo (vistas previas Resizable Canvas, modo de redimensionado del Device Hub); y las notas de la versión actuales —la edición de la beta 7, con la beta 7 publicada el 24 de agosto— marcan la condición de orientación como Fixed: pasó de los problemas conocidos a los problemas resueltos entre las ediciones de la beta 4 y la beta 6, y las orientaciones declaradas ya no deciden si tu app se redimensiona.1 El trabajo es sobre todo de resta: encuentra los lugares donde tu diseño cree en un único tamaño de pantalla y elimina esa creencia. Abajo, la lista, en el orden en que yo la recorrería.
Por qué ahora
Tres hechos con fecha ponen el reloj en marcha:
- La beta 7 llegó el 24 de agosto, con el ciclo en su fase de estabilidad: las betas tardías de Apple corrigen más que añaden, y las versiones finales han salido en septiembre todos los años.1
- El límite del redimensionado es el enlace al SDK. Las notas de la versión de Xcode 27 describen entrar en el modo de redimensionado del Device Hub «con una app enlazada contra un SDK de iOS 26 o anterior» como algo «no compatible».2 El patrón recorre también las notas de iOS: cada entrada sobre redimensionado está condicionada a «compilada con el SDK de iOS 27». Recompila y estarás del lado redimensionable de esa línea; quédate en el SDK antiguo y estarás renunciando al rumbo que lleva la plataforma.
- El último bloqueo estructural ya cayó. En la época de la beta 4, una app de iPad cuyo
UISupportedInterfaceOrientationsomitía alguna de las cuatro orientaciones se trataba como no redimensionable de forma continua: un problema conocido cuya solución documentada tenía un costo no documentado que expliqué en el artículo sobre esa solución temporal. Ese problema salió de los problemas conocidos y pasó a los problemas resueltos entre las ediciones de la beta 4 y la beta 6 de las notas, y la edición actual lo marca Fixed: «A partir de iOS 27, las orientaciones de interfaz admitidas ya no deberían ser una condición para el redimensionado continuo». La lista de problemas conocidos de UIKit en las notas de la beta 7 está vacía.1
En conjunto: la plataforma ahora espera que tu diseño sea una función de su contenedor, no de una ficha técnica de dispositivo. El iPad enseñó esta lección primero con la multitarea; iOS 27 extiende el mismo contrato al iPhone.
La lista de verificación
1. Recompila con el SDK de iOS 27 y luego mira de verdad
La adhesión es la recompilación. Antes de cambiar una línea de código de diseño, compila con Xcode 27, abre el modo de redimensionado del Device Hub y arrastra. La mayoría de las apps de SwiftUI bien estructuradas sobreviven a este primer contacto mejor de lo que sus autores esperan; lo que se rompe es instructivo, y se rompe siempre en el mismo puñado de sitios, que es justo de lo que trata el resto de esta lista.
2. Caza las creencias de tamaño fijo
Los culpables clásicos, en el orden en que suelen morder:
UIScreen.main.boundsusado como «el tamaño de la pantalla». En un mundo redimensionable no existe el tamaño de la pantalla, yUIScreen.mainestá formalmente obsoleto desde iOS 26. Deriva los tamaños de tu window scene o, en SwiftUI, del contenedor mediante unGeometryReaderusado con moderación o uncontainerRelativeFrame(_:)usado con intención.- Frames codificados a mano y números mágicos calibrados para dispositivos concretos («390 puntos de ancho significa iPhone»). Cualquier inferencia de dispositivo del tipo
if width == <number>te va a mentir. - Diseño condicionado por la orientación en vez de por el tamaño. Las comprobaciones de orientación siempre fueron un sustituto; con iOS 27 desacoplando las orientaciones del redimensionado, ese sustituto es oficialmente peso muerto. Ramifica según las clases de tamaño horizontal y vertical, que es para lo que existen.
- Cacheo de dimensiones al arrancar. Todo lo que se mide una sola vez al inicio y se guarda queda obsoleto tras el primer redimensionado.
3. Deja que los contenedores adaptables hagan su trabajo
El kit de diseño moderno de SwiftUI se creó exactamente para esto: ViewThatFits para elegir entre distintas disposiciones, containerRelativeFrame para dimensionar respecto al contenedor y no a la pantalla, y cuadrículas y frames flexibles para todo lo que queda en medio. Si tu app viene de la era del rectángulo fijo, la refactorización más rentable suele ser sustituir un diseño estructural basado en GeometryReader más aritmética por estas primitivas. Las apps de UIKit consiguen el mismo resultado con clases de tamaño y las secciones dirigidas por el entorno de UICollectionViewCompositionalLayout.
Los cambios de barra de herramientas y de diseño en iOS 27 empujan en la misma dirección: el framework ahora te da control explícito en los puntos donde se agota el espacio, y el espacio ahora se agota de forma dinámica.
4. Prueba donde el redimensionado ocurre de verdad
Xcode 27 te da dos superficies hechas a propósito, ambas maduras desde temprano en el ciclo de betas:
- El modo Resizable Canvas en las vistas previas: ya no está limitado a proporciones de tamaño concretas (la restricción se levantó en la beta 2), así que puedes arrastrar por todo el rango de formas que tu app podría habitar.2
- El modo de redimensionado del Device Hub para apps en ejecución, con las salidas de emergencia corregidas desde la beta 3 (salir del modo de redimensionado por un crash o al pasar a segundo plano ya no deja bloqueada la pantalla del dispositivo hasta reiniciar).2
Haz una pasada por cada pantalla principal en cada uno de los dos. Los errores que encuentres se concentrarán en las pantallas que cacheaban, suponían o inferían.
5. Revisa los flags que pusiste hace años
UIRequiresFullScreen y las declaraciones restrictivas de UISupportedInterfaceOrientations son la forma en que históricamente las apps se libraron de las exigencias de la multitarea de iPad. Ninguna de las dos está obsoleta, pero ambas son ahora estructurales de maneras nuevas: el ciclo de betas dedicó varias ediciones a aclarar cómo interactúan con el redimensionado continuo, y los problemas conocidos de la época de la beta 4 sobre el comportamiento de redimensionado de UIRequiresFullScreen aparecen ya como Fixed entre los problemas resueltos.1 Si esas claves están en tu Info.plist por una decisión tomada en 2019, este es el mes para volver a tomarla a propósito. El análisis del costo de la solución temporal cubre los efectos secundarios del conjunto de orientaciones que conviene revisar antes de ampliar nada.
6. Reserva presupuesto para los efectos de segundo orden
Redimensionable significa que tu texto se ajusta distinto, que tus imágenes se recortan distinto, que tu NavigationSplitView se colapsa y se expande según el antojo de alguien, y que tus estados vacíos cuidadosamente afinados se muestran en proporciones que nunca previsualizaste. Nada de esto es difícil por separado. Todo junto es la razón de que la lista empiece ahora y no la semana en que salga el hardware.
Qué me saltaría
Sáltate especular sobre dispositivos concretos. El contrato de redimensionado está en el SDK que puedes descargar hoy, documentado en notas de la versión que puedes leer hoy, y comprobable con herramientas que llegaron en la primera beta de Xcode 27. Si este otoño aparece un iPhone plegable, las apps que hicieron la lista de arriba están listas; si aparece la próxima primavera, el mismo trabajo rinde de inmediato en la multitarea de iPad y en lo siguiente que la plataforma redimensione. Prepararse para el mecanismo gana a prepararse para el rumor.
Puntos clave
- La línea de adhesión es el enlace al SDK. Recompila con el SDK de iOS 27 y el redimensionado pasa a ser el problema y la oportunidad de tu app; el Device Hub trata como no compatibles las apps con un SDK más antiguo en modo de redimensionado.2
- El bloqueo por orientación ya cayó. Las orientaciones declaradas ya no deciden el redimensionado: el problema aparece como Fixed en las notas actuales, y la lista de problemas conocidos de UIKit está vacía.1
- El trabajo es borrar supuestos, no añadir funciones. Lecturas del tamaño de pantalla, diseños con números mágicos, sustitutos de orientación, cachés de arranque: encuéntralos, cámbialos por un diseño derivado del contenedor y listo.
- Prueba en las superficies reales. Las vistas previas Resizable Canvas y el modo de redimensionado del Device Hub existen precisamente para esto; una pasada por cada uno en cada pantalla encuentra casi todo lo que va a morder.
Preguntas frecuentes
¿Mi app se vuelve redimensionable automáticamente?
El enlace al SDK es el límite que traza Apple: las notas de la versión de Xcode 27 califican de no compatible el modo de redimensionado con apps de SDK de iOS 26 o anterior, y las notas de iOS condicionan cada comportamiento de redimensionado a compilar con el SDK de iOS 27.12 Lo que pase después depende de tu diseño: el SwiftUI dirigido por el contenedor se adapta casi siempre; los supuestos de tamaño fijo salen a la superficie como errores.
¿Sigo necesitando declarar las cuatro orientaciones para ser redimensionable de forma continua?
No: las notas de la versión actuales marcan la condición de orientación como Fixed (se resolvió entre las ediciones de la beta 4 y la beta 6) y afirman que «las orientaciones de interfaz admitidas ya no deberían ser una condición para el redimensionado continuo».1 Las betas anteriores exigían la solución de las cuatro orientaciones, que tenía efectos secundarios en toda la app que vale la pena entender si la publicaste.
¿UIRequiresFullScreen está obsoleto ahora?
No. Sigue siendo una clave admitida, y los problemas conocidos del ciclo de betas sobre su comportamiento de redimensionado aparecen como Fixed entre los problemas resueltos de las notas actuales.1 Pero es exactamente el tipo de renuncia de hace años que vale la pena volver a decidir con intención en una plataforma que piensa primero en el redimensionado.
¿Cuándo se vuelve urgente?
Las versiones finales de iOS 27 se esperan en septiembre, y el ciclo de requisitos de SDK de otoño de Apple implica que los envíos nuevos pasarán al SDK de iOS 27 según el calendario habitual de Apple después de eso. La lista de arriba es una semana de trabajo enfocado para la mayoría de las apps: se termina con holgura antes de la temporada de lanzamientos si empiezas ahora.
Fuentes
-
Documentación para desarrolladores de Apple, iOS & iPadOS 27 Release Notes (edición de la beta 7, 24 de agosto de 2026). Fuente del estado Fixed del problema 166422120: «En iPad, si tu app de iPad se compila con el SDK de iOS 27 y su
UISupportedInterfaceOrientationsno incluye las cuatro orientaciones de interfaz, la app se trata como no redimensionable de forma continua. A partir de iOS 27, las orientaciones de interfaz admitidas ya no deberían ser una condición para el redimensionado continuo». El problema estaba en los problemas conocidos de la edición de la beta 4 y ya figuraba en los problemas resueltos en la edición de la beta 6 (las copias archivadas lo confirman); los cuatro problemas de redimensionado conUIRequiresFullScreende la época de la beta 4 (178558224, 178559386, 178560235, 178562971) están igualmente marcados como Fixed entre los problemas resueltos, y la lista de problemas conocidos de UIKit en la edición de la beta 7 está vacía. ↩↩↩↩↩↩↩↩↩↩ -
Documentación para desarrolladores de Apple, Xcode 27 Release Notes (beta 6). Fuente de: el modo de redimensionado del Device Hub con «una app enlazada contra un SDK de iOS 26 o anterior» como «no compatible»; «las vistas previas de iOS en modo Resizable Canvas ya no están limitadas a proporciones de tamaño concretas»; el error de pantalla corregido al salir del modo de redimensionado; y «Xcode 27 beta 6 incluye Swift 6.4 y los SDK para iOS 27, iPadOS 27, tvOS 27, watchOS 27, macOS 27 y visionOS 27». ↩↩↩↩↩↩↩