Flutter Widget là thành phần cơ bản nhất trong Flutter, được sử dụng để tạo ra giao diện người dùng (UI). Mọi thứ trong Flutter, từ văn bản, hình ảnh, nút bấm cho đến toàn bộ giao diện ứng dụng, đều là widget. Widgets trong Flutter là bất biến (immutable), tức là khi trạng thái của chúng thay đổi, một widget mới sẽ được tạo ra thay thế.
Có hai loại widget chính:
- Stateless Widget: Là widget không có trạng thái và không thay đổi sau khi được vẽ.
- Stateful Widget: Là widget có trạng thái và có thể thay đổi trong suốt vòng đời của nó.
Cấu trúc của Widget
Mỗi widget có phương thức build() trả về các widget con để tạo ra giao diện người dùng. Flutter sử dụng một cây widget (widget tree) để quản lý cấu trúc của ứng dụng.
Các loại widget phổ biến trong Flutter:
- Text: Dùng để hiển thị văn bản đơn giản.
- Container: Widget bao bọc giúp điều chỉnh kích thước, căn chỉnh, và trang trí các widget con.
- Row và Column
- Image
- Button
- Scaffold
- ListView
- Stack
- Form và TextField
- FutureBuilder & StreamBuilder
Bài viết khác
Flutter Navigation and Routing
Trong Flutter, việc chuyển đổi giữa các màn hình (screen/page) được thực hiện thông qua Navigator và Route. Flutter cung cấp hai loại điều hướng chính: Named Route: Sử dụng chuỗi định danh (string) để gọi màn hình. Direct Route: Sử dụng đối tượng Route để gọi màn hình. Navigator là một widget quản lý […]
Flutter State Management
SetState là cách cập nhật trạng thái cơ bản: Provider – Một nhà cung cấp thì dùng ChangeNotifierProvider Dùng navigator. Màn hình như ngăn sếp push vô pop ra. Provider có thể quản lý trạng thái ở nhiều màn hình khác nhau. Dùng với comsumer có thể dùng tham số trực tiếp truy xuất thay vì dùng […]
Flutter Layout
Cơ chế cốt lõi để xây dựng nên layout trong Flutter là Widget. Hầu như tất cả mọi thứ đều là Widget Ảnh, icon, text, rows, columns, grid, arrange, constrain, align,… Material apps – Sử dụng Scaffold widget. Chúng ta có thể sử dụng widget trong phần body. Non-Material apps Aligning widget mainAxisAlignment và crossAxisAlignment cung […]
Flutter Package
Flutter Package là một bộ mã nguồn chứa các chức năng được viết sẵn giúp lập trình viên có thể tái sử dụng trong ứng dụng của mình. Các package này thường được chia sẻ công khai và được sử dụng để tăng tốc quá trình phát triển, bổ sung các tính năng hoặc tích […]
Cài đặt Flutter – MacOS
Để cài đặt Flutter trên hệ điều hành của bạn, bạn có thể làm theo hướng dẫn sau tùy theo hệ điều hành của mình. Flutter hỗ trợ Windows, macOS, và Linux. Dưới đây là các bước cài đặt Flutter cho từng hệ điều hành MacOS Bước 1: Tải Flutter SDK Truy cập: https://docs.flutter.dev/get-started/install/macos/mobile-ios Tải xuống […]
Flutter – Phát triển ứng dụng đa nền tảng
Flutter là một bộ công cụ phát triển giao diện người dùng (UI) mã nguồn mở do Google phát triển. Flutter giúp các lập trình viên xây dựng ứng dụng di động, web, và desktop từ cùng một codebase duy nhất. Điều này có nghĩa là bạn có thể viết một lần và triển khai […]