9 oct. 2026
Medir cuánto tarda en ejecutarse una operación parece uno de los problemas más sencillos de programación. Guardamos la hora antes, ejecutamos el código, volvemos a consultar la hora y restamos ambos valores. Durante años, en Swift ha sido habitual resolverlo con Date, CFAbsoluteTimeGetCurrent() o DispatchTime. El problema es que no todos esos relojes representan el mismo concepto de tiempo y elegir el incorrecto puede producir mediciones que no significan exactamente lo que creemos.
Leer articulo8 oct. 2026
Tener un buscador dentro de una app está bien. Pero poder llegar a él diciendo «Busca taladros en Taller» ahorra unos cuantos pasos. Con App Intents podemos conectar esa petición con nuestra pantalla de resultados y conservar la experiencia de búsqueda que ya hemos construido.
La integración requiere algo más que abrir la aplicación: hay que transmitir la consulta, mostrar la pantalla adecuada y hacer que ambos caminos, la voz y el teclado, utilicen el mismo estado.
Leer articulo7 oct. 2026
Durante años, representar una tabla dentro de texto enriquecido en iOS significaba recurrir a HTML, alinear contenido manualmente con tabuladores o construir una interfaz específica con UITableView o UICollectionView. Con el SDK de iOS 27, Apple ha llevado a UIKit NSTextTable, NSTextTableBlock y el resto de APIs de TextKit necesarias para representar tablas como parte real de un NSAttributedString.
La diferencia conceptual es importante: NSTextTable no es una nueva vista ni pretende competir con UITableView. La tabla forma parte del modelo tipográfico del documento. Sus filas y columnas se integran en el propio texto enriquecido, de forma que pueden convivir con párrafos, enlaces, imágenes, listas y otros atributos dentro del mismo NSAttributedString.
Leer articulo6 oct. 2026
Una lista puede mostrar diez elementos y a la vez estar evaluando contenido de muchos más. Al investigar ese comportamiento, conviene revisar qué devuelve el bloque de ForEach. Una condición aparentemente inocente puede complicar el trabajo que SwiftUI necesita hacer antes de presentar las filas.
SwiftUI dispone de un diagnóstico específico para encontrar estas situaciones. Abre el esquema de la aplicación en Xcode, entra en Run → Arguments → Arguments Passed On Launch y añade:
Leer articulo5 oct. 2026
Las animaciones más habituales de SwiftUI interpolan entre dos estados. Una vista de tarjeta pasa de estar contraída a expandida, un botón cambia de color o una vista aparece o desaparece modificando su opacidad. Sin embargo, algunos efectos necesitan varios pasos en un orden concreto: elevar un elemento, girarlo, hacerlo rebotar y devolverlo a su posición inicial.
Antes de iOS 17, coordinar una secuencia de este tipo solía requerir varios valores de estado, retrasos artificiales o llamadas encadenadas a withAnimation. El resultado podía funcionar visualmente, pero la progresión de la animación quedaba repartida entre el estado de la vista y el código encargado de cambiarlo.
Leer articulo