NSFetchedResultsController不会响应二进制属性的更新

时间:2011-12-13 06:44:18

标签: objective-c nsfetchedresultscontroller binary-data nsmanagedobjectcontext

我有NSFetchedResultsController从上下文中获取User个实体。一切都很好; UserfetchedResultsController对象进行了更改,tableView也会相应更新。

但是,每个User实体都有二进制数据(NSDatapicture属性。每当我更改User picture时,fetchedResultsController都不会接受任何更改。

user.picture = UIImagePNGRepresentation([UIImage imageNamed:@"picture.png"]);

我希望在更改controllerDidChangeContent:时调用picture,但不会触发任何内容。

编辑:我忘了提到我在异步调用的成功块中设置了picture。我不确定这是否有所作为。

有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

默认情况下,NSFetchRequest返回NSArray,而不是NSMutableArray。确保您的数组类型为NSMutableArray,然后使用下面的行作为fetchRequest。

NSMutableArray *mutableFetchResults = [[managedObjectContext executeFetchRequest:request error:&error] mutableCopy];

可以找到此更多信息here