SwiftUI Academy · Oppitunti

Silmukointi ForEachilla

Näytä rivit tietotaulukon perusteella

Oppitunti 2/413 vaihetta

Silmukointi ForEachilla on ilmainen SwiftUI Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu SwiftUI Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. SwiftUI Academy-kurssilla on yhteensä 4 oppituntia.

Miksi ForEach

Rivien kirjoittaminen käsin toimii kahdelle kohteelle, mutta oikea data sijaitsee taulukoissa. ForEach luo automaattisesti yhden rivin kutakin alkiota kohden. 🔁

let fruits = ["Apple", "Pear", "Kiwi"]

ForEach List-näkymän sisällä

Kun sijoitat List-näkymän sisään ForEach-rakenteen, se luo kokoelmassa olevaa jokaista alkiota varten oman rivin riippumatta alkioiden määrästä.

List {
    ForEach(fruits, id: \.self) { fruit in
        Text(fruit)
    }
}

Closure saa jokaisen alkion

closure suoritetaan kerran jokaista alkiota kohden, ja se saa kyseisen alkion, jotta voit muodostaa rivin oikeiden tietojen perusteella.

ForEach(fruits, id: \.self) { fruit in
    Text(fruit)
}

Tunnisteella on väliä

SwiftUI:n on pystyttävä erottamaan rivit toisistaan, joten ForEach tarvitsee aina tavan tunnistaa jokainen alkio yksilöllisesti.

id-parametri

Kun kyseessä on yksinkertainen arvojoukko, määritä id-parametriksi esimerkiksi .self-avaimen polku, jotta jokainen arvo voi tunnistaa itsensä SwiftUI:lle yksilöllisesti.

ForEach(scores, id: \.self) { score in
    Text("\(score)")
}

Alueen läpikäynti

Tarvitsetko taulukon sijaan kiinteän määrän rivejä? Välitä range, niin ForEach antaa sinulle jokaisen indeksin vuorollaan. Tämä sopii erinomaisesti paikkamerkkiriveille.

ForEach(0..<5) { index in
    Text("Row \(index)")
}

Monipuolisten rivien rakentaminen

Closuren sisällä voit palauttaa minkä tahansa näkymän, joten jokainen ForEach-rivi voi olla kokonainen HStack kuvakkeineen ja otsikoineen.

ForEach(fruits, id: \.self) { fruit in
    HStack {
        Image(systemName: "leaf")
        Text(fruit)
    }
}

Staattisen ja dynaamisen yhdistäminen

List voi sisältää yhdessä sekä static-otsikon Text-näkymänä että ForEach-silmukan, jolloin kiinteät ja datavetoiset rivit yhdistyvät.

List {
    Text("Fruits")
    ForEach(fruits, id: \.self) { Text($0) }
}

Struct-rakenteiden läpikäynti

Kun käyt läpi struct-rakenteiden taulukkoa, jokainen alkio sisältää useita kenttiä, jotka voit näyttää rivillä.

ForEach(people, id: \.name) { person in
    Text(person.name)
}

Data ohjaa käyttöliittymää

Kun muutat taulukkoa, myös rivit päivittyvät vastaavasti. ForEach-rakenteen avulla luettelosi on yksinkertaisesti elävä peilikuva sille välittämästäsi datasta.

List-näkymiä pidemmälle

ForEach ei ole tarkoitettu vain listoille. Sen avulla voit täyttää myös VStack-, HStack- ja grid-näkymät toistuvilla näkymillä mistä tahansa kokoelmasta.

VStack {
    ForEach(fruits, id: \.self) { Text($0) }
}

Pikatarkistus

Palauta mieleesi, mitä ForEach-closure vastaanottaa.

Kertaus

Opit käyttämään ForEach-rakennetta: se muuntaa minkä tahansa kokoelman riveiksi ja antaa sinulle jokaisen alkion, jolloin käyttöliittymäsi seuraa dataasi automaattisesti. 🎉

Aloita maksutta

Opi Swift tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Silmukointi ForEachilla” ilmainen?

Kyllä – oppitunnin ”Silmukointi ForEachilla” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko SwiftUI Academy-kurssin, päivitä CoddyKit PROhon. SwiftUI Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Silmukointi ForEachilla”?

Näytä rivit tietotaulukon perusteella Harjoittelet SwiftUI Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni SwiftUI Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin SwiftUI Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Silmukointi ForEachilla”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä SwiftUI Academy-oppitunnilla?

Kyllä. Jokainen SwiftUI Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Staattisen luettelon rakentaminen
  2. Silmukointi ForEachilla
  3. Identifiable ja vakaat tunnisteet
  4. Osiot ja luettelotyylit
← Takaisin: SwiftUI Academy