昨天學習了從右邊滑到左邊的函式,今天來跟大家分享從左邊滑到右邊的喔
程式碼如下:
func tableView(_ tableView: UITableView, leadingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
//這邊創建了一個實例UIContextualAction,style是正常樣式
//{ [self] (_,_, completionHandler) 這邊是閉包的開始,前面兩個參數是_可以忽略不看,最後一個completionHandler是操作完成後,要呼叫這個參數,並告訴系統已完成操作
let editAction = UIContextualAction(style: .normal, title: "edit") { [self] (_,_, completionHandler) in self.button.setTitle("編輯", for: .normal)
self.button.backgroundColor = UIColor.magenta
//if indexPath.row < self.MessageArray.count 是用來檢查這個索引有沒有超出範圍
if indexPath.row < self.MessageArray.count{
self.edit_cell = self.MessageArray[indexPath.row]
self.UserName.text = self.edit_cell?.Name
self.tvtext.text = self.edit_cell?.Constent
let edit_CurrenTime = self.edit_cell?.CurrenTime
//打開資料庫
let realm = try! Realm()
//這邊從資料庫查找時間相同的資料,currenTime是抓取第一個符合條件的對象
editCell_Time = realm.objects(MessageBoard.self).where{
$0.CurrenTime == edit_CurrenTime ?? ""
}[0]
}
//刷新tableview內的資料
self.tbview.reloadData()
}
//回傳一個UISwipeActionsConfiguration的實例,並搭配editAction的動作
return UISwipeActionsConfiguration(actions: [editAction])
}
大家可以仔細看程式裡面的註解喔!
今天跟大家分享了tableview的內建函式並搭配realm資料庫做使用的實例,明天開始會跟大家分享怎麼做天氣api的專案喔!