新增任務保持在最上方
• 新增待辦事項時,未完成的任務應該插入列表的最前面
• 保持列表整齊,最新的未完成任務顯示在上方
完成項目自動移到最下方
• 當使用者勾選完成任務後,該項目自動移動到列表底部
• 保持未完成任目在上方,完成任務在下方
保留每個清單項目的框架與顏色
• 每個待辦項目仍保留長方形框,點擊圓形打勾後文字槓掉
• 勾選時框框顏色變為紫色,垃圾桶紅色維持
main.dart 中 _addTask 與 _toggleDone 修改:
// ===== 第十四天修改:新增任務插入到最上方 =====
void _addTask(String task) {
setState(() {
// 將新任務放在最上方
_todoList.insert(0, ToDoItem(title: task));
});
_textController.clear();
}
// ===== 第十四天修改:完成任務自動移到最下方 =====
void _toggleDone(int index) {
setState(() {
_todoList[index].toggleDone();
final item = _todoList.removeAt(index);
// 完成就移到最下面,未完成保持原本位置
if (item.isDone) {
_todoList.add(item);
} else {
_todoList.insert(0, item);
}
});
}
說明:
• _addTask 使用 insert(0, ...) 讓新任務顯示在最上方
• _toggleDone 先切換完成狀態,再把該項目移動到列表底部或上方,確保列表整齊
• 這樣做完,第十四天的功能就完成了:新增未完成在最上,完成的自動移下,並保留長方形框和顏色設定