He utilizado un método diferente para desaparecer el UIDatePicker.
crea un archivo XIB (plumín) y agrega un UIDatePicker luego cambia el tamaño de la vista para que solo se ajuste al UIDatePicker, crea una propiedad (hazlo fuerte y no atómico) en tu ViewController (o cualquier clase que uses, y sintetiza por supuesto).
@property (nonatomic, strong) UIView *myDatePickerView;
@synthesize myDatePickerView;
continuación, crear un método loadDatePickerView
- (void) loadDatePickerView
{
UINib *nib = [UINib nibWithNibName:kNIBname bundle:[NSBundle mainBundle]];
NSArray *views = [nib instantiateWithOwner:self options:nil];
self.myDatePickerView = [views firstObject];
[myDatePickerView setFrame:CGRectMake(0, 318, 320, 162)];
[self.view addSubview:myDatePickerView];
}
implementar el UITextFieldDelegate, y en el método textFieldDidBeginEditing llamar al método loadDatePickerView,
[self loadDatePickerView];
para hacer la función de crear una propiedad que es una interfaz de usuario DatePicker ejemplo
@property (nonatomic,strong)
UIDatePicker *myDatePicker;
(sintetizar por supuesto)
ahora crear un IBAction así:
-(IBAction)datePickerValueChanged:(UIDatePicker *)sender
{
myDatePicker = [[myDatePickerView subviews] lastObject];
//now you can do whatever you want with the DatePicker
}
ahora conectar el IBAction al selector en el archivo XI ter, de esa manera la XIB ahora es la instancia de UIDatePicker que creó en el VC; si desea que desaparezca, puede agregar un UITapGestureRecognizer (en ViewDidLoad) y el elector será otro IBAction que elimina myDatePickerView de su Superview así:
- (void)viewDidLoad
{
[super viewDidLoad];
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dropPicker:)];
[self.view addGestureRecognizer:tap];
[self datePickerValueChanged:myDatePicker];
}
-(IBAction)dropPicker:(id)sender
{
[myDatePickerView removeFromSuperview];
}
veo que es la técnica utilizada en los contactos, por ejemplo si se agrega un cumpleaños. Tendré que volver a trabajar mi vista porque actualmente tengo un botón "Cancelar" como elemento del botón de la barra derecha. Lo probaré. ¡Gracias por la respuesta! – johnnyspo
Incluso tengo un botón para guardar ... puede cambiar los botones ... –
¡¡Exactamente lo que hice !! Gracias de nuevo. – johnnyspo