30 ago. 2026
SwiftUI incluye tres modificadores cuyos nombres parecen describir distintas versiones de una misma operación: geometryGroup(), compositingGroup() y drawingGroup(opaque:colorMode:).
Los tres crean distintos tipos de límites alrededor de una vista, pero actúan en momentos diferentes del proceso con el que SwiftUI calcula y representa la interfaz. El primero interviene en la geometría durante una animación, el segundo determina cómo se aplican los efectos de composición y el tercero rasteriza el contenido en una imagen intermedia: convierte la representación a píxeles estáticos.
Leer articulo29 ago. 2026
Cuando una pantalla de SwiftUI solo presenta una vista modal, un Bool parece la solución más natural. El problema aparece en cuanto esa misma vista necesita abrir un formulario de creación, un editor, una pantalla de filtros y alguna opción adicional. Cada destino incorpora su propio @State, su botón y su modificador .sheet, mientras la lógica de presentación queda repartida por todo el body.
struct TravelPlanView: View {
@State private var showsNewStop = false
@State private var showsFilters = false
@State private var stopToEdit: Stop?
var body: some View {
TripTimeline()
.sheet(isPresented: $showsNewStop) {
NewStopView()
}
.sheet(isPresented: $showsFilters) {
FilterStopsView()
}
.sheet(item: $stopToEdit) { stop in
EditStopView(stop: stop)
}
}
}
El código funciona, pero el número de variables y modificadores crece al mismo ritmo que los destinos. Además, el estado permite combinaciones que la interfaz no puede representar: showsNewStop y showsFilters podrían ser true al mismo tiempo. Aunque SwiftUI termine mostrando una única vista, el modelo ya no describe con precisión lo que ocurre en pantalla.
Leer articulo28 ago. 2026
Desde iOS 15, SwiftUI permite hacer seleccionable el contenido de una vista Text con el modificador .textSelection(.enabled). La API era sencilla y útil, pero en iPhone y iPad tenía una limitación importante: al mantener pulsado, las acciones del menú contextual se aplicaban al bloque completo. Si una pantalla mostraba un párrafo largo, el usuario podía copiarlo entero, pero no elegir únicamente una palabra o una frase.
iOS 27 elimina esa limitación y lo hace sin añadir una API nueva. El mismo modificador muestra ahora el resaltado y los indicadores de selección del sistema, de modo que es posible ajustar el rango y actuar solo sobre el fragmento escogido. El cambio parece pequeño, pero acerca el comportamiento de Text al que los usuarios ya esperan encontrar en Safari, Notas y otras aplicaciones del sistema.
Leer articulo25 ago. 2026
Durante años, hablar de Swift en Windows significaba demostrar que el compilador podía generar un ejecutable y que Foundation era capaz de resolver tareas reales fuera de los sistemas de Apple. Esa etapa ya está superada. Swift se utiliza en Windows sobre arquitecturas AMD64 y ARM64, tanto en herramientas de línea de comandos como en aplicaciones con interfaz gráfica, y para red algunos proyectos recurren directamente a URLSession mientras otros se integran con componentes escritos en C++.
Leer articulo24 ago. 2026
Los Universal Links suelen presentarse como una funcionalidad sencilla: se añade la capability de Associated Domains al proyecto, se publica un fichero apple-app-site-association en el servidor y la aplicación procesa la URL recibida. Esta explicación es correcta, pero solo describe el camino ideal.
Cuando una aplicación trabaja con varios dominios, distintas versiones, entornos de pruebas, rutas localizadas por idioma o campañas de marketing, ese pequeño fichero JSON se convierte en parte de la infraestructura del producto. Un error no produce necesariamente un crash ni una respuesta HTTP fallida. El enlace, sencillamente, se abre en el navegador y la causa puede encontrarse en la aplicación, el servidor, la caché de Apple o una regla de redirección demasiado amplia.
Leer articulo