SwiftUI Academy · Oppitunti

@State-ominaisuuksien määrittäminen

Lisää @State näkymän paikallisten muuttuvien tietojen säilyttämistä varten

Oppitunti 2/413 vaihetta

@State-ominaisuuksien määrittäminen 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.

Tutustu @State-wrapperiin

Voitte ilmoittaa näkymän paikallisen muokattavan datan merkitsemällä ominaisuuden @State-attribuutilla. Tämä property wrapper kertoo SwiftUI:lle, että sen tulee säilyttää ja tarkkailla arvoa puolestanne. 🏷️

@State private var count = 0

Anna sille aina oletusarvo

@State-ominaisuus tarvitsee alkuarvon heti ilmoituksensa yhteydessä. SwiftUI käyttää sitä säilön luomiseen, kun näkymä näkyy ensimmäisen kerran.

@State private var isOn = false

Merkitse se privatеksi

State kuuluu yhdelle näkymälle, joten ilmoittakaa se private-määreellä. Tämä ilmaisee, ettei ulkopuolisen koodin pidä päästä asettamaan sitä suoraan, jolloin omistajuus pysyy selkeänä.

@State private var name = ""

Arvon lukeminen

Lukekaa @State-ominaisuutta kuten mitä tahansa tavallista muuttujaa. Käyttäkää sen nimeä bodyssa, niin SwiftUI seuraa, että näkymä riippuu siitä.

Text("You tapped \(count) times")

Arvon kirjoittaminen

Voitte muuttaa @State-ominaisuutta, vaikka näkymä on struct. Sijoittakaa sille arvo toiminnosta, niin SwiftUI ajoittaa uudelleenpiirron automaattisesti.

Button("Add") { count += 1 }

Se säilyy uudelleenpiirroissa

SwiftUI pitää @State-arvon elossa niiden lukuisten kertojen ajan, kun näkymän body lasketaan uudelleen. count-arvo ei nollaudu vain siksi, että näkymä piirrettiin uudelleen.

Kokoa kokonaisuus

Ilmoittakaa state, lukekaa se bodysta ja muuttakaa sitä painikkeesta. Tämä on koko kierros, joka mahdollistaa useimmat yksinkertaiset vuorovaikutukset.

struct CounterView: View {
    @State private var count = 0
    var body: some View {
        Button("Count \(count)") { count += 1 }
    }
}

Käytä yksinkertaisia arvotyyppejä

@State toimii parhaiten arvotyyppien, kuten Int-, Bool-, String-tyyppien tai pienten structien, kanssa. Jaettuihin olioihin tarvitsette myöhemmin muita työkaluja, mutta tässä arvot ovat tavallisin ratkaisu.

Yksi omistaja kutakin ominaisuutta kohti

Näkymä, joka ilmoittaa @State-ominaisuuden, on sen omistaja. Muut näkymät voivat saada siihen käyttöoikeuden, mutta vain yhden näkymän tulee säilyttää tietyn arvon alkuperäinen state.

Älä käytä sitä liikaa

Käyttäkää @Statea vain, kun arvo todella muuttuu näkymän ollessa näytöllä. Vakiot otsikot ja parametrina saadut tiedot eivät tarvitse sitä.

Nimeä selkeästi

Nimetkää state sen kuvaaman asian mukaan, kuten isLoading tai selectedTab. Selkeät nimet tekevät datan kulusta ilmeisen kaikille, jotka lukevat näkymää.

Pikatarkistus

Mikä rivi ilmoittaa oikein yksityisen näkymän paikallisen state-arvon?

Kertaus

Ilmoittakaa muuttuva näkymän data @State-attribuutilla, antakaa sille oletusarvo ja pitäkää se yksityisenä. Lukekaa sitä vapaasti bodysta ja muuttakaa sitä toiminnoista uudelleenpiirtojen käynnistämiseksi. ✅

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 ”@State-ominaisuuksien määrittäminen” ilmainen?

Kyllä – oppitunnin ”@State-ominaisuuksien määrittäminen” 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 ”@State-ominaisuuksien määrittäminen”?

Lisää @State näkymän paikallisten muuttuvien tietojen säilyttämistä varten 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 ”@State-ominaisuuksien määrittäminen”-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. Miksi näkymät tarvitsevat tilan
  2. @State-ominaisuuksien määrittäminen
  3. Napautuslaskurin rakentaminen
  4. Näkyvyyden vaihtaminen tilan avulla
← Takaisin: SwiftUI Academy