# collection-for, ListView.builder và Chip

> collection-for trong SingleChildScrollView, khi nào phải đổi sang ListView.builder, và nhóm chip chọn sinh từ enum.values.

- URL: https://dantech.academy/courses/flutter-mobile-101/02-widget-essentials/lesson-03-lists-and-selection
- Khóa học: [Flutter Mobile 101](https://dantech.academy/courses/flutter-mobile-101.md)
- Module: Widget Fundamentals
- Thời lượng: 12 phút
- Độ khó: beginner
- Truy cập: Dành cho học viên

## Mục tiêu

- Dựng danh sách bằng collection-for và biết điều kiện nào bắt buộc đổi sang ListView.builder
- Dựng nhóm chip chọn sinh từ enum.values, với đúng một biến state

## Nội dung bài học

1. Danh Sách Trong Repo: collection-for
2. Khi Nào Phải Đổi Sang ListView.builder
3. Chip Chọn Từ enum.values
4. Cách Dùng Enum Có Field

## Học cùng AI agent

Toàn bộ bài học dành cho học viên của khóa. Học viên mở bài trên web và bấm nút **Markdown** để copy toàn bài, rồi dán vào Claude, ChatGPT, Cursor hoặc agent bạn đang dùng. Nhanh hơn: tạo token ở `/profile/ai-agents` và agent đọc bài trực tiếp qua MCP.

- [Đăng ký khóa học](https://dantech.academy/flutter-mobile-101/checkout)

---

- Bài trước: [StatelessWidget, StatefulWidget và setState](https://dantech.academy/courses/flutter-mobile-101/02-widget-essentials/lesson-02-state-and-rebuilds.md)
- Bài tiếp theo: [BoxConstraints, Expanded và LayoutBuilder](https://dantech.academy/courses/flutter-mobile-101/02-widget-essentials/lesson-04-constraints-and-sizing.md)
