我有一个具有 30 个不同属性的 NSManagedObject 子类。在应用程序中,用户应该能够编辑(大部分)表格中的属性。有 3 个属性会根据其他属性组合的值自动设置。
例子:
@implementation myNSManagedObjectSubclass
@dynamic one; // edited by user in form
@dynamic two; // edited by user in form
@dynamic three; // edited by user in form
@dynamic four; // edited by user in form
@dynamic five; // edited by user in form
@dynamic icon; // automatically set based values of above 5 items
@end
我有两个问题:
1)关于在表格视图中构建用户可用于编辑对象的表单:除了对表格视图的内容进行硬编码之外,如何让我的表格视图仅为它需要显示的属性构建单元格? 我目前的想法是使用这个方法来遍历我的对象的所有属性,并有一个二进制“显示掩码”,表格视图可以使用它来确定它是否应该为特定项目显示一个单元格。有没有更好的办法?
2)关于根据其他属性的值自动设置一个属性:如何?我认为 KVO 在这里发挥了作用(我需要图标属性在它依赖的属性之一发生更改时立即在屏幕上更新)但我是 Core Data 的新手,我不确定我是否可以添加 KVO到 NSManagedObject 子类。