SwiftUI Academy · Lektion

Dynamic Type og skalerede skrifttyper

Understøt større tekst uden at ødelægge layoutet.

Lektion 2 af 413 trin

Dynamic Type og skalerede skrifttyper er en gratis SwiftUI Academy-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i SwiftUI Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. SwiftUI Academy-kurset indeholder 4 lektioner i alt.

Hvad er Dynamic Type?

Dynamic Type lader brugere vælge deres foretrukne tekststørrelse for hele systemet. Din app bør respektere den i stedet for at gennemtvinge én fast størrelse. 🔤

Brug teksttypografier

Vælg semantiske teksttypografier som .title eller .body i stedet for faste punktstørrelser. De skaleres automatisk efter brugerens indstilling.

Text("Welcome")
    .font(.title)
Text("Details here")
    .font(.body)

Hvorfor ikke faste størrelser?

En hårdkodet .font(.system(size: 17)) ignorerer brugerens valg og forbliver lille. Teksttypografier tilpasser sig, det gør faste tal ikke.

Text("Stuck small")
    .font(.system(size: 17))

Skalér brugerdefinerede skrifttyper

Har du en brandskrifttype? Brug .font(.custom:size:relativeTo:), så den stadig skaleres med en valgt teksttypografi.

Text("Brand")
    .font(.custom("Avenir", size: 17, relativeTo: .body))

Wrapperen ScaledMetric

Skal afstand eller billedstørrelse vokse sammen med teksten? @ScaledMetric skalerer ethvert tal sammen med Dynamic Type.

@ScaledMetric var iconSize = 24
Image(systemName: "star").frame(width: iconSize)

Lad teksten ombrydes

Stor tekst kræver plads. Undgå lineLimit(1) på vigtige etiketter, ellers bliver lange ord afskåret med en ellipse.

Text(longTitle)
    .lineLimit(2)

Tillad tættere tilpasning

Når pladsen virkelig er trang, lader minimumScaleFactor teksten krympe lidt, før den afkortes, så den forbliver læsbar.

Text(price)
    .minimumScaleFactor(0.7)

Forhåndsvis store størrelser

Brug dynamicTypeSize i en preview for at simulere den største indstilling og opdage ødelagte layouts tidligt.

#Preview {
    ContentView()
        .dynamicTypeSize(.accessibility3)
}

Begræns området om nødvendigt

Du kan begrænse, hvor meget teksten skaleres, med dynamicTypeSize(...), men begræns det sparsomt, så du ikke udelukker brugere, der har brug for mere.

VStack { }
    .dynamicTypeSize(...DynamicTypeSize.accessibility1)

Stakke frem for faste rammer

Foretræk fleksible stakke frem for faste højder. En fast ramme kan klippe stor tekst, mens en stak vokser, så teksten passer.

Test i begge ender

Kontrollér din app med både de mindste og de største Dynamic Type-størrelser. Hvis begge er læsbare, er de fleste brugere imellem også dækket.

Hurtigt tjek

Du vil have, at en brugerdefineret brandskrifttype vokser med brugerens tekststørrelse. Hvad bruger du?

Opsummering

Du har gjort teksten fleksibel: vælg semantiske teksttypografier, skalér brugerdefinerede skrifttyper og måleenheder, lad teksten ombrydes, og test den største størrelse. 👍

Gratis at komme i gang

Lær Swift med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Dynamic Type og skalerede skrifttyper” gratis?

Ja — hele teksten til “Dynamic Type og skalerede skrifttyper” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af SwiftUI Academy-kurset, skal du opgradere til CoddyKit PRO. SwiftUI Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Dynamic Type og skalerede skrifttyper”?

Understøt større tekst uden at ødelægge layoutet. Du øver dig i SwiftUI Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på SwiftUI Academy?

Der kræves ingen tidligere erfaring. SwiftUI Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.

Hvor lang tid tager lektionen “Dynamic Type og skalerede skrifttyper”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne SwiftUI Academy-lektion?

Ja. Alle SwiftUI Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. VoiceOver og tilgængelighedslabels
  2. Dynamic Type og skalerede skrifttyper
  3. Lokalisering af strings og String Catalogs
  4. Tilpasning til lyst og mørkt udseende
← Tilbage til SwiftUI Academy