krz/daybyday
clone: git clone https://gitbay.org/krz/daybyday.git
main: NumbersView.swift · raw
1//
2// NumbersView.swift
3// DayByDay
4//
5
6import SwiftUI
7
8/// Displays numbers 1–10 as large, tappable cards in a scrollable grid.
9/// Adapts between 1 and 2 columns depending on available width.
10struct NumbersView: View {
11 private let columns = [
12 GridItem(.adaptive(minimum: 300, maximum: 500), spacing: 24)
13 ]
14
15 var body: some View {
16 ScrollView {
17 LazyVGrid(columns: columns, spacing: 24) {
18 ForEach(LearnNumber.allCases) { number in
19 NumberCard(
20 number: number,
21 isHighlighted: number == .current
22 )
23 .frame(height: 200)
24 }
25 }
26 .padding(32)
27 }
28 }
29}
30
31#Preview {
32 NumbersView()
33}