Usare il container Grid in SwiftUI
Per creare dei grtid layout in SwiftUI abbiamo il container Grid.
Come potete vedere dalla documentazione, abbiamo anche dei container più "specifici" per layout orizzontali o verticali.
In questo articolo vediamo un esempio basico del container Grid tralasciando gli altri.
Qui sotto un pò di codice Swift:
import SwiftUI
struct Libro: Identifiable {
let id = UUID()
var titolo: String
var autore: String
var prezzo: Double
}
func creaLista() -> Array<Libro> {
var list: Array<Libro> = Array();
list.append(Libro(titolo: "IT", autore: "Stephen King", prezzo: 120.33))
list.append(Libro(titolo: "Sahara", autore: "Clive Cussler", prezzo: 10.00))
list.append(Libro(titolo: "Artemis - la prima città sulla luna", autore: "Andy Weir", prezzo: 50.99))
return list
}
struct ContentView: View {
@State private var libri = creaLista()
var body: some View {
Grid(alignment: .leading, horizontalSpacing: 10, verticalSpacing: 10) {
ForEach(libri) { item in
GridRow(alignment: .firstTextBaseline) {
Text(item.titolo)
Text(item.autore)
Text(item.prezzo.formatted())
}
Divider()
}.padding(10)
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
Ho messo tutto il codice insieme per comodità, ma sarebbe meglio dividere la parte del layout da quella dei dati.
Enjoy!
swift swiftui grid gridrow
Commentami!