我有一个可选的二进制属性:image
,其中包含我的实体的图像。
在界面中,我有NSImageView(图像良好)和“删除图像”按钮。单击图像删除按钮后,我将执行以下操作:
- (IBAction)saveAction:(id)sender {
NSError *error = nil;
if (![[self managedObjectContext] save:&error]) {
[[NSApplication sharedApplication] presentError:error];
}
[tableView reloadData];
}
- (IBAction)removeImage:(id)sender {
[image setImage:nil]; // image is a NSImageView outlet bound to the image attribute.
[self saveAction:sender];
}
它从NSImageView清除图像,但是二进制数据仍保留在Core Data实体中。
我如何在核心数据实体中反映变化?
谢谢!
编辑:
NSImageView已经绑定到模型的图像属性,并且也可以作为插座使用。所以我只是在找人告诉我如何通过获取模型来重置属性(如果那是我需要做的)。
希望得到任何代码帮助。 :)
最佳答案
[image setImage:nil];
image
实际上是图像视图吗?如果是这样,我必须提醒您清楚,准确地命名实例变量。您需要设置模型对象而不是视图的
image
属性。通过控制器将视图绑定到模型;然后,当您更改模型时,视图将免费收取更改。关于objective-c - 在核心数据实体中删除二进制属性的数据(用于NSImageView),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1035847/