我的CoreData应用程序使用两个“日期”字段来存储日期信息。我正在使用UIDatePicker来选择日期。当我对这两个属性进行验证时,我可以看到在保存ManagedObject之前不会修改“Date”属性。
如果更改DatePicker值,如何更新这些“日期”属性?
- (BOOL)validateStartDate:(id *)ioValue error:(NSError **)outError
{
NSDate *inputDate = *ioValue;
if ([inputDate compare:self.endDate] == NSOrderedDescending) {
if (outError != NULL) {
// Error handling ****
}
return NO;
}
return YES;
}
- (BOOL)validateEndDate:(id *)ioValue error:(NSError **)outError
{
NSDate *inputDate = *ioValue;
if ([inputDate compare:self.startDate] == NSOrderedAscending) {
if (outError != NULL) {
// Error handling ***
}
return NO;
}
return YES;
}
这是我用来验证“开始”和“结束”日期的代码。在这里,我想在每次用户更改时保存“开始”或“结束”日期。这样验证才能正常运行。
答案 0 :(得分:1)
-(IBAction)valueChanged:(id)sender{
yourManagedObject.date = [(UIDatePicker *)sender date];
NSError *error;
if([yourManagedObjectContext save:&error]){
//didn't save
}
}
然后将您的日期选择器发送事件“valueChanged”连接到该