mostrando datepicker hace 18 años y traba el ui datepicker en ios

En mi proyecto, necesito mostrar el selector de date 18 y necesito bloquear los 80 años atrás, así que ¿cómo puedo mostrar esa date en datepicker? ¿Puede alguien ayudarme a encontrar aquí? ¿Estoy agregando el código? Mi código se imprimió en el logging pero yo Necesito mostrar en mi datepicker así que ¿cómo puedo mostrar

NSCalendar * gregorian = [[NSCalendar alloc] initWithCalendarIdentifier: NSGregorianCalendar]; NSDate * currentDate = [NSDate date]; NSDateComponents * comps = [[NSDateComponents alloc] init]; [comps setYear: -18]; NSDate * minDate = [gregorian dateByAddingComponents: comps toDate: currentDate options: 0]; [comps setYear: -100]; NSDate * maxDate = [gregorian dateByAddingComponents: comps toDate: currentDate options: 0]; [comps release]; self.datePickerView.minimumDate = minDate; self.datePickerView.maximumDate = maxDate; NSLog(@"minDate %@", minDate); NSLog(@"maxDate%@", maxDate); 

Hola primero de todo, la date mínima debe ser de 100 años y la date máxima debe ser de 18 años y luego establecer la date de pickerView a una date entre el range de dates, de modo que su código final se verá como

 NSCalendar * gregorian = [[NSCalendar alloc] initWithCalendarIdentifier: NSGregorianCalendar]; NSDate * currentDate = [NSDate date]; NSDateComponents * comps = [[NSDateComponents alloc] init]; [comps setYear: -18]; NSDate * maxDate = [gregorian dateByAddingComponents: comps toDate: currentDate options: 0]; [comps setYear: -100]; NSDate * minDate = [gregorian dateByAddingComponents: comps toDate: currentDate options: 0]; [comps release]; self.datePickerView.minimumDate = minDate; self.datePickerView.maximumDate = maxDate; self.datePickerView.date = minDate; 

Espero que esto te sea útil.

Aquí está el método viewDidLoad de class de controller de vista

 - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. NSCalendar * gregorian = [[NSCalendar alloc] initWithCalendarIdentifier: NSGregorianCalendar]; NSDate * currentDate = [NSDate date]; NSDateComponents * comps = [[NSDateComponents alloc] init]; [comps setYear: -18]; NSDate * maxDate = [gregorian dateByAddingComponents: comps toDate: currentDate options: 0]; [comps setYear: -100]; NSDate * minDate = [gregorian dateByAddingComponents: comps toDate: currentDate options: 0]; [comps release]; UIDatePicker *pickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 0, 320, 300)]; [pickerView setMinimumDate:minDate]; [pickerView setMaximumDate:maxDate]; [pickerView setDate:minDate]; [[self view] addSubview:pickerView]; } 

Mi salida es

introduzca la descripción de la imagen aquí

¿Puedes compartir tu salida como captura de pantalla?