나는 UIDatePicker에서 텍스트와 날짜를 저장 한 다음 그 날짜를 UIDatePicker에 다시 기록한 경우 해당 메모를 표시하는 앱을 가지고 있습니다.DatePicker CoreData 작업 중지
훌륭한 작품입니다! 오직 UIDatePicker 날짜를 오늘 설정하면 CoreData가 작동하지 않는다는 것을 발견했습니다!
이 setDate 행을 실행할 때만 핵심 데이터가 작동하지 않습니다. 응용 프로그램이 충돌하지 않고 잘 실행, 그냥 어떤 데이터를 저장하지 않습니다. 내가 그 라인을 언급하면 그 작품은 매력이있다. 하지만 오늘 앱이로드 될 때 UIDatePicker가 있어야합니다.
NSDate *now = [[NSDate alloc] init];
[datePicker setDate:now];
이
는 메모 가져 :NSFetchRequest *fetch = [[NSFetchRequest alloc] init];
NSEntityDescription *testEntity = [NSEntityDescription entityForName:@"DatedText" inManagedObjectContext:self.managedObjectContext];
[fetch setEntity:testEntity];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"dateSaved == %@", datePicker.date];
[fetch setPredicate:pred];
NSError *fetchError = nil;
NSArray *fetchedObjs = [self.managedObjectContext executeFetchRequest:fetch error:&fetchError];
if (fetchError != nil) {
NSLog(@"fetchError = %@, details = %@",fetchError,fetchError.userInfo);
}
noteTextView.text = [[fetchedObjs objectAtIndex:0] valueForKey:@"savedText"];
을 그리고이 노트에 저장하기 :
NSManagedObject *newDatedText;
newDatedText = [NSEntityDescription insertNewObjectForEntityForName:@"DatedText" inManagedObjectContext:self.managedObjectContext];
[newDatedText setValue:noteTextView.text forKey:@"savedText"];
[newDatedText setValue:datePicker.date forKey:@"dateSaved"];
NSError *saveError = nil;
[self.managedObjectContext save:&saveError];
if (saveError != nil) {
NSLog(@"[%@ saveContext] Error saving context: Error = %@, details = %@",[self class], saveError,saveError.userInfo);
}
게시 한 마지막 몇 줄의 코드는 저장할 수없는 경우 -save : 메서드가 오류를 다시 전달함을 보여줍니다. 오류가 보이십니까? 그렇다면, * 그것은 무엇입니까? 오류가 없다면 어떻게 저장하지 않을 것이라고 확신합니까? 정확히 어떻게 * 당신이 이것을 확인하고 있습니까? 또한 앱 시작시 첫 번째 코드 블록이 NSDate 인스턴스를 누출하는 것으로 보입니다./init을 해제하지 않고 할당합니다. 자동 완성 된 인스턴스를 반환하려면 [NSDate date]를 시도하거나 완료하면 날짜 선택기로 가져온 후 풀어 놓으십시오. –