Удаление объекта из NSFetchedResultsControllers через вкладки без сохранения - PullRequest
0 голосов
/ 05 января 2012

Я установил UITableViewController, который имеет 2 представления, я получил каждое представление для загрузки разных данных, размещенных в одной базовой модели данных. Но теперь, когда я пытаюсь выполнить удаление в одной из двух таблиц, кажется, что оно не сохраняется. Код:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        // Delete the row from the data source
        NSManagedObject* itemToDelete = 
        [self.fetchedResultsController objectAtIndexPath:indexPath];

    [self.context deleteObject:itemToDelete];
    }
  }
} 

Это работало нормально, пока я не добавил второй контроллер представления, в делегате приложения я установил NSManagedObjectContext для обоих контроллеров представления, которые использует представление вкладки, затем каждый загружается одинаково с использованием уважаемой NSEntityDescription и использует тот же код для удаления.

Полагаю, есть проблема с разделением контекста от делегата приложения или чего-то еще, но я не уверен, какой другой вариант у меня есть ...

Пожалуйста, помогите!

1 Ответ

0 голосов
/ 05 января 2012

Не должно быть проблем с разделением NSManagedObjectContext между двумя объектами, которые взаимодействуют только с ним в главном потоке.Убедитесь, что у каждого из выбранных вами контроллеров результатов установлено свойство delegate, соответствующее его соответствующему контроллеру представления, и что вы адекватно обрабатываете controllerDidChangeContent: (это может быть так же просто, как вызов reloadData для соответствующего табличного представления).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...