ここや他の場所で同様のクエリを調べましたが、まだ問題を解決できないようです。
配列内の変更可能な辞書に格納されている日付が他の 2 つの日付の間にあるかどうかを確認しようとしています。警告を生成するコードは次のとおりです。
if ( [[[records objectAtIndex:( i )] objectForKey:@"Date"] compare:userStartDate] == NSOrderedDescending && [[[records objectAtIndex:( i )] objectForKey:@"Date"] compare:userEndDate] == NSOrderedAscending ) {
関連する可能性があるため、userStartDate は次のように作成されます。
- (id)initWithArray:(NSMutableArray *)newRecords andWithUserStartDate:(NSDate *)newUserStartDate andWithUserEndDate:(NSDate *)newUserEndDate {
if (self = [super init]) {
[self setRecords:newRecords];
[self setUserStartDate:newUserStartDate];
[self setUserEndDate:newUserEndDate];
}
return self;
}
コードの別の部分から次のように呼び出されます。
summariser = [[Summariser alloc]initWithArray:records andWithUserStartDate:[userTimesStartDatePicker dateValue] andWithUserEndDate:[userTimesEndDatePicker dateValue]];
そして、レコード自体は次のようになります。
[record setObject:[datePicker dateValue] forKey:@"Date"];
これが明確で、誰かが助けてくれることを願っています。
ありがとう