2013-08-15 2 views
0

У меня есть массив с разным уроком. Вот пример того, какую информацию мой массив содержит:Определить, у кого есть ближайший к настоящему времени

09,00 - 10,00, 11,00 - 12,00, 13,00 - 14,00, 15,00 - 16,00

Я отображая эти занятия в UIPickerView для того, чтобы позволить пользователю выбрать желаемое время. Но я хочу, чтобы PickerView автоматически выбирал урок, который ближе всего к фактическому времени. Мне нужно было бы сравнить его с фактической датой. Кто-нибудь знает, как это сделать?

Заранее благодарен!

ответ

1

Это даст текущий час: мин

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
    [dateFormat setDateFormat:@"HH:mm"]; 
    NSString *str = [dateFormat stringFromDate:[NSDate date]]; 

Тогда вы можете найти разницу и проверить минимум.

Теперь вы можете поставить условие, как:

if  (hh <= 10)   { // 09:00 - 10:00 should come } 
else if (hh == 10 && mm < 30) { // 09:00 - 10:00 should come } 

else if (hh == 10 && mm > 30) { // 11:00 - 12:00 should come } 
else if (hh <= 12 && mm < 30) { // 11:00 - 12:00 should come } 

else if (hh == 14 && mm < 30) { // 13:00 - 14:00 should come } 
else if (hh <= 14 && mm > 30) { // 13:00 - 14:00 should come } 

else if (hh == 14 && mm < 30) { // 15:00 - 16:00 should come } 
else if (hh <= 14 && mm > 30) { // 15:00 - 16:00 should come } 
else       { // 15:00 - 16:00 should come } 
Смежные вопросы