LazyVStackとLazyHStack
大きなコンテンツを遅延描画してパフォーマンスを高めます。
「LazyVStackとLazyHStack」はCoddyKit上の無料SwiftUI Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwiftUI Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 SwiftUI Academyコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
The Eager Problem
A regular VStack builds every child at once. With hundreds of rows, that eager work can stutter and waste memory.
Meet LazyVStack
A LazyVStack only creates rows as they scroll into view, keeping huge lists fast and light. ⚡
LazyVStack {
ForEach(items) { item in
Row(item)
}
}Lazy Needs Scrolling
Always place a LazyVStack inside a ScrollView, since lazy loading only pays off when content scrolls offscreen.
ScrollView {
LazyVStack {
ForEach(items) { Row($0) }
}
}The Horizontal Twin
A LazyHStack does the same trick sideways, perfect for long, swipeable rows of cards or thumbnails.
ScrollView(.horizontal) {
LazyHStack {
ForEach(photos) { Thumb($0) }
}
}Same Spacing API
Lazy stacks accept the same spacing and alignment options as their eager cousins, so your layout code barely changes.
LazyVStack(alignment: .leading, spacing: 12) {
ForEach(items) { Row($0) }
}Cells Get Reused
As rows leave the screen, a LazyVStack can discard them, so memory stays steady even with thousands of items.
Lazy vs List
A List is lazy too, but a LazyVStack gives you styling freedom with no built-in separators or insets.
Pinned Headers
Lazy stacks support pinnedViews, letting section headers stick to the top as you scroll, like a contacts app.
LazyVStack(pinnedViews: [.sectionHeaders]) {
Section(header: Header()) {
Rows()
}
}When to Stay Eager
For a handful of items a plain VStack is simpler. Reach for lazy only when the list grows long.
Watch the Scroll
You will not see new LazyVStack rows being built, but Instruments shows they appear just in time as you scroll.
Scale with Confidence
With lazy stacks you can show endless feeds, galleries, and timelines without ever worrying about performance. ✨
Quick Check
Think about why lazy stacks exist.
Recap
You met LazyVStack and LazyHStack: stacks that create children on demand inside a ScrollView for smooth, large layouts. 🎉
よくある質問
「LazyVStackとLazyHStack」レッスンは無料ですか?
はい。「LazyVStackとLazyHStack」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、SwiftUI Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 SwiftUI Academyコースには全4レッスンが含まれています。
「LazyVStackとLazyHStack」で何を学びますか?
大きなコンテンツを遅延描画してパフォーマンスを高めます。 ブラウザで直接実行するハンズオンコードでSwiftUI Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
SwiftUI Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのSwiftUI Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「LazyVStackとLazyHStack」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このSwiftUI Academyレッスンでコードを書いて実行できますか?
はい。すべてのSwiftUI Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 横方向と縦方向のScrollView
- LazyVStackとLazyHStack
- LazyVGridで適応型グリッドを作る
- ScrollView Readerとアンカー