많은 Pages가있는 Journal NSManagedObject 하위 클래스가 있습니다. 이 사용자 지정 메서드를 (범주에서) 만든 순서대로 페이지 배열을 가져 왔습니다. 알다시피 매우 간단합니다. 어떤 이유로이 방법은 때로는 실패하고 난 self
객체에 EXC_BAD_ACCESS를 얻기 위해 관련 개체에 대한 Coredata, EXC_BAD_ACCESS 또는 이상한 동작
//
// @returns an array of pages sorted by indexInJournal
//
- (NSArray*)sortedPages {
NSLog(@"Are we in main thread? %i", [NSThread isMainThread]);
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"indexInJournal"
ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
NSArray *result = [[self.pages allObjects] sortedArrayUsingDescriptors:sortDescriptors];
return result;
}
; 그것은 이상한 것입니다. 왜냐하면 저는 그것에 대한 방법을 실행하고 있기 때문입니다. NSZombieEnabled가 도움이되지 않았습니다.
다른 루틴에서 호출 된 경우이 메서드는 작동하지만 단일 페이지 (첫 번째 페이지) 만 반환합니다. 3 페이지가 있다고 확신합니다.
coredata istantiates/release objects에 내가 누락 된 것이 있습니까?
건배, 다비드
페이지 관계에 계단식 삭제 규칙이 관련되어 있습니까? 그렇다면 sortedPages/Array 메소드에 페이지를 보내기 전에 어느 페이지도 isDeleted에 YES를 리턴하지 않도록하십시오. – Wienke