NSDate オブジェクトの割り当てが時期尚早に解除されるという問題がたくさんあります。問題は、NSDate コンビニエンス メソッドから返されたオブジェクトを処理する方法に関連している可能性があると思われます。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]];
アップデート
問題は、ここにコピーされたコードにはありませんでした。私の方法では、便利な方法JKShow init
から返された日付を保持していませんでした。NSDate
助けてくれてありがとう、みんな。