OK, pracuję nad tym od kilku dni i utknąłem. Próbuję porównać bieżący czas z ustalonym czasem. To, czym chcę się stać, to, że każdego dnia chcę, aby pewien kod został podpalony, ale nie o określonej porze dnia.NSDate, porównując dwie daty
, więc, w zasadzie, jeśli "aktualny czas" jest taki sam lub równy "z góry określony czas", należy zwolnić ten kod. Lub zwolnij ten wiersz kodu.
Brzmi prosto, ale mam problem ze złapaniem porównania dwóch razy.
Mam sformatowany ciąg do daty jak tak
NSString* dateString = @"11:05 PM";
NSDateFormatter* firstDateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[firstDateFormatter setDateFormat:@"h:mm a"];
[firstDateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSDate* date = [firstDateFormatter dateFromString:dateString];
NSLog(@"date %@",date);
potem chwycić aktualny czas podobnie jak
NSDate *currentTime = [NSDate dateWithTimeIntervalSinceNow:[[NSTimeZone localTimeZone] secondsFromGMT]];
NSDateComponents* comps = [[NSCalendar currentCalendar]
components: NSHourCalendarUnit |NSMinuteCalendarUnit
|NSSecondCalendarUnit fromDate:currentTime];
[[NSCalendar currentCalendar] dateFromComponents:comps];
Więc jak mam porównać te dwa razy? Próbowałem wszystkiego, co przychodzi mi do głowy, proszę o pomoc.