[Video Summary] Ch. 6.1 Setting up the Catch Em All Interface - Iterate through a List w/o ForEach in SwiftUI (2024)

SwiftUI 6 Th02 2025

Mô tả nhanh

Video này hướng dẫn cách thiết lập giao diện người dùng cho ứng dụng "Catch Em All" trong SwiftUI, tập trung vào việc sử dụng List để hiển thị dữ liệu mà không cần dùng ForEach.

Video

Click vào hình dưới để mở:
Ch. 6.1 Setting up the Catch Em All Interface - Iterate through a List w/o ForEach in SwiftUI (2024)

Mô tả chi tiết

Video này hướng dẫn cách thiết lập giao diện người dùng cho ứng dụng "Catch Em All" trong SwiftUI, tập trung vào việc sử dụng List để hiển thị dữ liệu mà không cần dùng ForEach.

Video bắt đầu bằng việc tạo một project iOS mới trong Xcode, đặt tên là "Catch Them All". Sau đó, một mảng String tạm thời tên "creatures" được tạo ra để chứa dữ liệu hiển thị (ví dụ: "Pikachu", "Squirtle",...).

Các bước chính để xây dựng giao diện:

  1. Tạo NavigationStack: Thay thế VStack mặc định bằng NavigationStack để có thể thêm tiêu đề và điều hướng.
  2. Sử dụng List với Data, ID và Content:
    • Thay vì sử dụng List {} thông thường, chọn option List(data:id:content:) để có thể lặp qua mảng dữ liệu một cách trực tiếp.
    • data lấy input là mảng "creatures".
    • id được set là \.self để xác định duy nhất từng phần tử.
    • content sử dụng trailing closure để hiển thị từng phần tử của mảng trong một Text view.
  3. Thêm listStyle modifier: Sử dụng .listStyle(.plain) để list có giao diện plain.
  4. Thêm navigationTitle: Thêm navigationTitle("Pokemon") để đặt tiêu đề cho navigation bar.
  5. Giải thích về ForEach: Video giải thích vì sao có thể không cần ForEach trong trường hợp này. ForEach cần thiết khi cần sử dụng các modifier như onDelete hoặc onMove để chỉnh sửa list. Trong ví dụ này, vì dữ liệu chỉ để xem và không chỉnh sửa nên có thể dùng trực tiếp List để hiển thị.
  6. Đổi tên ContentView:
    • Đổi tên ContentView thành CreaturesListView bằng cách refactor.
    • Cập nhật tên ở tất cả các chỗ được tham chiếu.
    • Cập nhật tên trong comment đầu file.

Cuối cùng, video nhấn mạnh rằng trong trường hợp chỉ cần hiển thị dữ liệu, việc sử dụng list trực tiếp sẽ đơn giản hơn và hiệu quả hơn. Các bài học tiếp theo sẽ hướng dẫn cách đọc dữ liệu JSON vào ứng dụng.

Chúc bạn học tập hiệu quả!

Tags