En essayant de supprimer des cellules dans mon UITableView, mais quand je les supprime, elles réapparaissent après que je recharge l'application. Je supprime de la même matrice que j'ai stocké les valeurs avec des données de base. Dois-je également supprimer directement de CoreData? comment je fais ça?UITableView Le contenu n'est pas supprimé après la suppression? [Swift 3.0 - Xcode 8]
Heres mon code:
///Function to remove TableView Cells
public func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == UITableViewCellEditingStyle.delete
{
SetTIME.remove(at: indexPath.row)
if SaveData.count == 4 {
SaveData.remove(at: myIndex*4)
SaveData.remove(at: (myIndex*4)+1)
SaveData.remove(at: (myIndex*4)+2)
SaveData.remove(at: (myIndex*4)+3)}
tableView.reloadData()
}
}
///CoreData
override func viewDidLoad() {
super.viewDidLoad()
let appDelegate = UIApplication.shared.delegate as! AppDelegate
let context = appDelegate.persistentContainer.viewContext
let newTrip = NSEntityDescription.insertNewObject(forEntityName: "Sets", into: context)
if DataGrab.count == 4{ // need to change after storing data in VC2 before sending
newTrip.setValue(DataGrab[0], forKey: "set1")
newTrip.setValue(DataGrab[1], forKey: "set4")
newTrip.setValue(DataGrab[2], forKey: "set3")
newTrip.setValue(DataGrab[3], forKey: "set2")}
do {
try context.save()
print("Saved")
}
catch{
//ProcessError
}
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Sets")
request.returnsObjectsAsFaults = false
do {
let results = try context.fetch(request)
if results.count > 0 {
for result in results {
if let set1 = (result as AnyObject).value(forKey: "set1") as? String
{
if SaveData.contains(set1){
} else {
SaveData.append(set1)
SetTIME.append(set1)
if let set2 = (result as AnyObject).value(forKey: "set2") as? String
{
SaveData.append(set2)
}
if let set3 = (result as AnyObject).value(forKey: "set3") as? String
{
SaveData.append(set3)
}
if let set4 = (result as AnyObject).value(forKey: "set4") as? String
{
SaveData.append(set4)
}
}
}
}
}
}
catch{
//ProcessErrors
}