Serie · 7 parti

Programmare in SwiftUI

Un'introduzione passo per passo a SwiftUI, scritta quando il framework è uscito. View, stack, stato, binding e il dialogo tra SwiftUI e UIKit.

Inizia la serie 2019–2020 · 36 min in tutto
SwiftUI5 gennaio 2020

Programmare in SwiftUI: introduzione

Perché SwiftUI segna una rottura con UIKit e con MVC: un framework dichiarativo in cui l'interfaccia deriva dallo stato. Gli appunti che aprono una serie.

2 min di lettura · Tradotto dall’inglese
SwiftUI6 gennaio 2020

Programmare in SwiftUI: l'oggetto View

Cos'è una View in SwiftUI: una struct che adotta un protocol con un solo requisito, il body, e come gli opaque type si differenziano dai protocol.

4 min di lettura · Tradotto dall’inglese
SwiftUI7 gennaio 2020

Programmare in SwiftUI: class e struct in SwiftUI

Perché una class non può sostituire direttamente una struct come View in SwiftUI, quale errore dà il compilatore e come una final class risolve il problema.

1 min di lettura · Tradotto dall’inglese
SwiftUI8 gennaio 2020

Programmare in SwiftUI: costruire view più complesse

Come costruire in SwiftUI una cella personalizzata con VStack, HStack, Image e Spacer, e come la closure ViewBuilder compone le view senza addSubview.

8 min di lettura · Tradotto dall’inglese
SwiftUI9 gennaio 2020

Programmare in SwiftUI: introduzione agli stati

Come @State lega una view SwiftUI ai suoi dati, perché supera l'approccio dei controller UIKit e come estrarre subview e passare loro un modello.

9 min di lettura · Tradotto dall’inglese
SwiftUI10 gennaio 2020

Programmare in SwiftUI: ObjectBinding e BindableObject

Come condividere un modello basato su class tra view SwiftUI con @ObjectBinding e BindableObject, notificando i cambi con il PassthroughSubject di Combine.

6 min di lettura · Tradotto dall’inglese
SwiftUI28 giugno 2019

TextField e UIViewRepresentable

Come aggirare i limiti del TextField di iOS 13 beta 2 incapsulando UITextField e il suo delegate in una UIViewRepresentable, con il focus tra i campi.

6 min di lettura · Tradotto dall’inglese
↑ ↓ naviga↵ apriesc chiudi