iT邦幫忙

2022 iThome 鐵人賽

DAY 14
0
Mobile Development

從零開始的Swift開發心路歷程2系列 第 14

【從零開始的Swift開發心路歷程2-Day14】CloudKit實作(3)-刪除資料

  • 分享至 

  • xImage
  •  

昨天成功完成顯示資料後,今天要來實作CloudKit Database的刪除功能,我一樣是使用UIMenu來實作編輯及刪除功能的按鈕

對UIMenu有興趣的話可以參考第六天的發文
以下是刪除資料的function,這時候伏筆來了!昨天宣告struct時有一個欄位是recordID,我們就可以根據每筆資料recordID的獨立性來刪除資料

func deleteItem(_ recordID : CKRecord.ID){
        database.delete(withRecordID: recordID) { deleteID, error in
            if let error = error{
                print(error)
            }else{
                print("刪除成功")
                self.fetchItem()
            }
        }
    }

這邊也會用到tableViewCell和viewConrtoller的protocol,用來同步cell和存資料陣列的index值,可以看看第七天的文章,操作都是差不多的,要注意的是要在tableView的cellForRowAt裡面多加cell.index = indexPath.row,不然不會抓到正確的index值

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "NameTableViewCell",for: indexPath) as! NameTableViewCell
        cell.nameLabel.text = nameArray[indexPath.row].name
        cell.index = indexPath.row
        cell.delegate = self
        return cell
    }

如此一來就能成功實作刪除功能啦!(gif有點小,傷眼請見諒QQ)

明天就來實作CloudKit Database的修改功能吧!


上一篇
【從零開始的Swift開發心路歷程2-Day13】CloudKit實作(2)-顯示資料
下一篇
【從零開始的Swift開發心路歷程2-Day15】CloudKit實作(4)-修改資料
系列文
從零開始的Swift開發心路歷程230
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言