Dynamic Type i skalowane czcionki
Obsługuj większy tekst bez psucia układu
Dynamic Type i skalowane czcionki to bezpłatna lekcja SwiftUI Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej SwiftUI Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs SwiftUI Academy zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
What Is Dynamic Type?
Dynamic Type lets users pick their preferred text size system-wide. Your app should respect it, not force one fixed size. 🔤
Use Text Styles
Pick semantic text styles like .title or .body instead of fixed point sizes. These scale automatically with the user's setting.
Text("Welcome")
.font(.title)
Text("Details here")
.font(.body)Why Not Fixed Sizes
A hard-coded .font(.system(size: 17)) ignores the user's choice and stays small. Text styles adapt; fixed numbers don't.
Text("Stuck small")
.font(.system(size: 17))Scaling Custom Fonts
Have a brand font? Use .font(.custom:size:relativeTo:) so it still scales with a chosen text style.
Text("Brand")
.font(.custom("Avenir", size: 17, relativeTo: .body))The ScaledMetric Wrapper
Need a spacing or image size to grow with text? @ScaledMetric scales any number alongside Dynamic Type.
@ScaledMetric var iconSize = 24
Image(systemName: "star").frame(width: iconSize)Let Text Wrap
Big text needs room. Avoid lineLimit(1) on important labels, or long words will be cut off with an ellipsis.
Text(longTitle)
.lineLimit(2)Allow Tighter Fitting
When space is truly tight, minimumScaleFactor lets text shrink a little before truncating, keeping it readable.
Text(price)
.minimumScaleFactor(0.7)Preview Large Sizes
Use dynamicTypeSize in a preview to simulate the largest setting and catch broken layouts early.
#Preview {
ContentView()
.dynamicTypeSize(.accessibility3)
}Cap the Range If Needed
You can limit how far text scales with dynamicTypeSize(...), but cap sparingly so you don't shut out users who need more.
VStack { }
.dynamicTypeSize(...DynamicTypeSize.accessibility1)Stacks Over Fixed Frames
Prefer flexible stacks over rigid heights. A fixed frame can clip large text, while a stack grows to fit.
Test at Both Ends
Check your app at the smallest and the largest Dynamic Type sizes. If both read well, most users in between will too.
Quick Check
You want a custom brand font to grow with the user's text size. What do you use?
Recap
You made text adapt: choose semantic text styles, scale custom fonts and metrics, let text wrap, and test the largest size. 👍
Ucz się Swift dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Dynamic Type i skalowane czcionki” jest bezpłatna?
Tak — pełny tekst „Dynamic Type i skalowane czcionki” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu SwiftUI Academy, przejdź na CoddyKit PRO. Kurs SwiftUI Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Dynamic Type i skalowane czcionki”?
Obsługuj większy tekst bez psucia układu Ćwiczysz SwiftUI Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć SwiftUI Academy?
Nie wymagamy żadnego doświadczenia. SwiftUI Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Dynamic Type i skalowane czcionki”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji SwiftUI Academy?
Tak. Każda lekcja SwiftUI Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- VoiceOver i etykiety ułatwień dostępu
- Dynamic Type i skalowane czcionki
- Lokalizowanie ciągów i katalogi String
- Dostosowanie do trybu jasnego i ciemnego