2

У меня есть UITableView, который заполнен из NSMutableArray. NSMutableArray был создан из моего NSFetchedResultsController который пришел из другой точки зренияУдалить строку из UITableView NSMutableArray и ManagedObjectContext

Templates *template2 = (Templates *)[fetchedResultsController objectAtIndexPath:indexPath]; 
     qModalView.templateObject = template2; 

и был записан в templateObject, так что я получил все мои объекты в этом мой NSMutablArray таким образом.

[templateObject.questions allObjects];

Теперь я хочу удалить строку в моем представлении таблицы, в массиве и в этом конкретном объекте в templateObject.questions.

Пожалуйста, помогите, у меня это до сих пор:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    Questions *question_var = [questionsArray objectAtIndex:indexPath.row]; 

    NSLog(@"_____________________________%@", question_var.question_title); 

    NSManagedObjectContext *context = [templateObject managedObjectContext]; 
    [context deleteObject:[templateObject.questions objectAtIndexPath:indexPath]]; 

    NSError *error; 
    if (![context save:&error]) { 

     NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
     abort(); 
    }else{ 
     NSLog(@"deleted"); 
    } 
} 

ответ

1

Вы можете удалить строку из таблицы с

[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] 
       withRowAnimation:YES]; 

и вы можете удалить объект из NSMutableArray с

[myArray removeObject:myObject]; 
+0

и как его удалить из базы данных? Это происходит автоматически? –

+0

Вы уже удалили базу данных в строках «[context deleteObject: [templateObject.questions objectAtIndexPath: indexPath]]; » и «[context save: & error]». –

Смежные вопросы