2016-09-13 5 views
0

Я использую UIDatePickerView, чтобы показать следующие 7 дней. Для этого я использую этот кодблок datepickerdate в соответствии с данными массива

NSDate *sevenDays = [[NSDate date] dateByAddingTimeInterval:60*60*24*7]; 
//Then you can use in DatePicker as of your below Code. 

ActionSheetDatePicker *datePicker = [[ActionSheetDatePicker alloc] 
    initWithTitle:@"Select Date" datePickerMode:UIDatePickerModeDate 
    selectedDate:[NSDate date] minimumDate:[NSDate date] 
    maximumDate:sevenDays target:self 
    action:@selector(timeWasSelected:element:) origin:sender]; 

. Теперь я хочу, чтобы заблокировать дату, которая приходит в NSArray

BlockDate =  (
       { 
      endtime = 13; 
      hdaydate = "2016-09-16"; 
      starttime = 7; 
     }, 
       { 
      endtime = 22; 
      hdaydate = "2016-09-15"; 
      starttime = 16; 
     } 
    );. 

Как заблокировать UIDatePickerView дату как за NSArray данных?

+1

Вы имеете в виду, что хотите преобразовать эти два 'NSDictionary' в два' NSDate'? Что вы пробовали? Вам удалось разобрать этот массив? Вы смотрели «NSDateFormatter» и «NSDateComponents»? – Larme

+0

@ Larme yes sir дата hdaydate должна быть отключена в pickerview, которая не может выбрать кого-либо или скрыть эту дату в pickerview – Sandeep

ответ

1

Вы не можете настроить внешний вид UIDatePicker, но можете зарегистрироваться для события valueChanged, а затем программно пропустить выбранную дату. Проблема заключается в том, что пользователь не сможет распознать, какая дата выбирается, что не является хорошим опытом.

Я бы предложил использовать UIPickerView и создать список доступных дат, оставив «заблокированные» даты.