Ich versuche Zellen in meinem UITableView zu löschen, aber wenn ich sie lösche, erscheinen sie wieder, nachdem ich die App neu geladen habe. Ich lösche aus dem gleichen Array, dass ich die Werte mit Core-Daten gespeichert habe. Muss ich auch direkt aus coreData löschen? wie mache ich das?UITableView Inhalt wird nach dem Löschen nicht gelöscht? [Swift 3.0 - Xcode 8]
Heres mein 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
}