今日[NSDate date]とユーザーが UIDatePicker dから選択した日との差を取得しようとしていますが、これは整数として返されます。
違いを理解するために私が使用しているものは次のとおりです。
NSDate *startDate = d;
NSDate *endDate = [NSDate date];
NSLog(@"startDate: %@",startDate);
NSLog(@"endDate: %@",endDate);
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
[gregorian setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
NSDateComponents *components = [gregorian components:NSDayCalendarUnit
fromDate:endDate
toDate:startDate
options:0];
NSInteger days = [components day];
NSLog(@"Days: %i",days);
startDateとendDateの両方が正しく返されますが、問題は、取得した日差が間違っていることです。たとえば、今日の日付を選択すると差は 0 になり、明日を選択しても差は 0 のままで、翌日を選択すると差は 1 しかないのに 2 になるはずです。
これを修正するために私ができることについて誰かアイデアがありますか? それは私を夢中にさせています、そして私はそれとの取引が何であるかわかりません.