今天來 To Do List 第一集,可以練習 TableView。
To Do List APP 基本以下四個功能
- 新增資料
- 修改資料
- 刪除資料
- 資料儲存
目前成果:
資料儲存
關掉App重開 資料一樣在!使用的是 UserDefaults。
UserDefaults.standard.set(value: Any?, forKey: String)UserDefaults.standard.value(forKey: String)
UserDefaults.standard.set 將資料存起來 帶入(要存的物件, forKey:”Key名稱”)
UserDefaults.standard.value 將資料取出 帶入(forKey: String)
// 將清單存到手機中
UserDefaults.standard.set(toDoList, forKey: "ToDoList")// 將清單取出
UserDefaults.standard.array(forKey: "ToDoList")
在後續的新增、修改、刪除資料中,皆會使用到UserDefaults
新增資料
一開始我先將 ToDoList 值設定成 拿取 UserDefaults 資料
?? [String]() — 為預設為String的空陣列
接著我們要新增資料囉
- 在畫面新增 UITextField 連結 @IBOutlet 至程式碼中
- 在畫面新增 UIButton 連結 @IBAction 至程式碼中
- 將畫面的 UITableView 連結 @IBOutlet 至程式碼中
修改資料
點擊 cell 中的代辦事項 ,會跳出帶有文字輸入框的 Alet 可以修改事項
將更新的 Alet 訊息框 寫在 didSelectRowAt function裡面。
didSelectRowAt — 可以偵測使用者點擊哪一列,以及要執行什麼操作。
詳細的 UIAlertController警示框介紹,可以查看之前寫過的文章。
刪除資料
點擊 cell 中的代辦事項 ,向左滑動會出現刪除的按鈕,按下即可刪除資料。
canEditRowAt 、 commit editingStyle fubction
接下來會增加新功能
- 編輯 List 順序
- 將完成的項目移至Finish區域,並且將字體改成刪除線效果
- 增加 Icon 以及開場動畫
- 設定日期與時間推播
預計會在出兩篇文章~~~ 下篇次見~~~👋👋👋