NSDate 객체가 너무 빨리 할당 해제되는 문제가 있습니다. 이 문제는 NSDate의 편리한 메소드에서 반환 된 객체를 처리하는 방식과 관련이있을 것으로 생각됩니다. I 은 JKShow 클래스의 showDate 속성 선언이 "보유"되어야하지만 할당 또는 복사하도록 변경하면 문제에 아무런 영향을 미치지 않는 것으로 보입니다.코코아 편의 메소드에서 반환 된 객체 처리
JKShow *show;
NSDate *date;
NSMutableArray *list = [[NSMutableArray alloc] init];
// Show 1
show = [[JKShow alloc] init];
//...
date = [gregorian dateFromComponents:dateComponents];
show.showDate = date;
[list addObject:[show autorelease]];
// Show 2
show = [[JKShow alloc] init];
//...
date = [gregorian dateFromComponents:dateComponents];
show.showDate = date;
[list addObject:[show autorelease]];
UPDATE
문제는 여기에 복사 한 코드가 아니었다. 내 JKShow init
메서드에서 나는 NSDate
편의 메서드에서 반환 된 날짜를 유지하지 못했습니다. 도와 줘서 고마워. 모두들.
원래 질문에 대한 수정 사항으로 업데이트를 게시하는 것이 좋습니다. 당신이 그것을 발견했기 때문에 다행입니다. 이런 것들을 사냥하는 것은 항상 고통입니다. – philsquared