Como recuperar o número de horas após a meia-noite de um objeto NSDat

Preciso recuperar o número de horas após a meia-noite de um controle UIDatePicker em um projeto do iPhone.datePickerMode está configurado paraUIDatePickerModeTime, para que o usuário possa definir apenas uma hora, sem data. Quando o usuário termina e dispensa a exibição em que o UIDatePicker está ativado, a seguinte data pode ser recuperada (como exemplo):

NSDate *returnTime = timePicker.date;
NSLog(@"returnTime: %@", returnTime); // returns for example @"1970-01-01 10:13:00 PM +0000"

Como disse, estou procurando o número de horas depois da meia-noite. No exemplo acima, esse valor deve ser22. Eu queria conseguir isso criando um objeto NSDateFormatter e extraindo a hora do dia no formato de relógio de 24 horas, usando assimsetDateFormat:@"H" (H maiúsculo em vez de 'h'):

NSDateFormatter *formatHour = [[NSDateFormatter alloc] init];
[formatHour setDateFormat:@"H"];
NSInteger intHoursPastMidnight = [[formatHour stringFromDate:returnTime] integerValue];

Isto nem sempre funciona como esperado. Quando o usuário desabilitar o relógio de 24 horas nas Preferências em todo o sistema (ou seja, o usuário usa AM / PM),intHoursPastMidnight conterá10 ao invés de22. 10 é realmente o valor visível noUIDatePicker, mas eu esperavaNSDateFormatter para converter isso para22 por causa de@"H".

O que há de errado aqui? Minha suposição de conversão está incorreta? Isso é um erro do UIDatePicker? Como posso resolver o problema, para que eu possa acessar essencialmente o número de horas após a meia-noite definido no UIDatePicker, independente da preferência de relógio de 12 ou 24 horas do usuário? Este é o caminho a segui

objetivo final, para deixar claro, é recuperar o número de minutos após a meia-noite (portanto, horas * 60 + minutos, valor sempre entre 0 e 1440

questionAnswers(2)

yourAnswerToTheQuestion