Мне нужно показать только семь дней. Как это сделать с помощью UIDatePicker и как мы устанавливаем минимальные и максимальные даты для UIDatePicker. Заранее спасибо.Как показать только 7 дней в UIDatePicker в iOS?
ответ
[datePicker setMinimumDate:[NSDate date]];
[datePicker setMaximumDate:[NSDate dateWithTimeIntervalSinceNow:60*60*24*7]];
Он хочет всего семь дней, включая текущую дату.
Спасибо @Saraswati. И так же, как это, возможно минимальное время и максимальное время, например, утром 10 утра до вечера 6 вечера. Является ли это возможным ? –
Saraswathi попытается дать подробный ответ. – user3182143
Небольшая предосторожность против чрезмерно упрощенного добавления времени: просто добавление секунд может столкнуться с краевыми случаями против перехода на летнее время (например). Всегда полезно использовать NSCalendar для управления расчетами времени.
NSDate *today = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
calendar.timeZone = [NSTimeZone localTimeZone];
NSDate *endDate = [calendar dateByAddingUnit:NSCalendarUnitDay value:7 toDate:today options:0];
Полученный EndDate в приведенном выше коде будет один час отличается от простого добавления секунд, в случае перехода на летнее время, происходящего в течение 7-дневного периода. Этот час может переломиться через день, что приведет к сбою (редкому) краю корпуса.
Установка Min и Max дата в Datepicker:
[datePicker setMinimumDate:[NSDate date];
[datePicker setMaximumDate:[[NSDate date] dateByAddingTimeInterval:60*60*24*7]];
Удалите ответ. Уже принятый ответ есть. Если вы опубликуете ответ, он должен быть уникальным. – user3182143
Вы спрашиваете, например, как установить минимальный быть * сегодня * и максимум будет * 7 дней с сегодняшнего дня *? – christopherdrum
Да @christopherdrum. –
Вы хотите показать семь дней и минимум, максимальную дату? – user3182143