Я следил за документами Apple, а также за некоторым кодом здесь, и я не могу заставить NSDateComponents работать правильно.
NSCalendar* calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [calendar components:(NSHourCalendarUnit|NSMinuteCalendarUnit) fromDate:dateValue];
[calendar release];
dateValue - это некоторая дата, меня интересует только ее время, а время - 8:00 утра. Когда я проверяю, какие компоненты находятся после этого, часы и минуты равны нулю.
Я также пытался вставить это, потому что я читал, что вам нужно (хотя это есть не в каждом примере):
[components setCalendar:calendar];