Danh sách việc cần làm: Danh sách công việc
Thuộc phần Dự án trong hành trình Flutter của Coddy. Bài học 1 trên 36.
Phần này gồm bốn ứng dụng, được xây dựng từng tính năng một. Bạn đã biết mọi phần rồi, giờ bạn kết hợp chúng theo cách các ứng dụng thực tế được tạo ra.
Ứng dụng đầu tiên là danh sách việc cần làm. Đến cuối chương này, bạn có thể thêm việc cần làm, đánh dấu chúng là đã hoàn thành, vuốt để xóa, hoàn tác thao tác xóa và lọc những gì bạn thấy.
Mọi ứng dụng đều bắt đầu từ dữ liệu. Hiện tại, một việc cần làm chỉ là một tiêu đề, vì vậy một lớp nhỏ lưu giữ tiêu đề đó, còn màn hình giữ một danh sách việc cần làm trong State:
class Task {
Task(this.title);
final String title;
}
final List<Task> _tasks = [Task('Buy milk')];ListView.builder biến danh sách đó thành các hàng trên màn hình. Nó gọi itemBuilder một lần cho mỗi chỉ số cho đến itemCount, và mỗi lần gọi trả về một ListTile.
Thử thách
DễHiển thị các việc cần làm:
- viết lớp
Taskvớifinal String titlevà hàm khởi tạoTask(this.title) - trong
_TodoScreenState, tạo danh sách_tasksgồm ba việc cần làm:Buy milk,Walk the dogvàRead a book - thay
Centertrongbody:bằngListView.builderđể hiển thị tiêu đề của từng việc cần làm trong mộtListTile
Tự làm thử
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.teal),
),
home: const TodoScreen(),
);
}
}
// Viết lớp (class) Task ở đây.
class TodoScreen extends StatefulWidget {
const TodoScreen({super.key});
@override
State<TodoScreen> createState() => _TodoScreenState();
}
class _TodoScreenState extends State<TodoScreen> {
// Tạo danh sách (list) các tác vụ ở đây.
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('My Tasks')),
body: const Center(
child: Text('Your tasks go here'),
),
);
}
}
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Dự án
1Dự án: Danh sách việc cần làm
Danh sách việc cần làm: Danh sách công việcDanh sách việc cần làm: Thêm công việc4Dự án: Theo dõi thói quen
Theo dõi thói quen: Thói quen của bạnTheo dõi thói quen: TuầnTự luyện tập: Trình biên dịch Flutter online