Cómo ocultar un keyboard numérico de iOS

Estoy usando un keyboard numérico para la input de un UITextField. Noté que Interface Builder tiene una propiedad de key de retorno llamada "Listo". Cuando selecciono "Listo" en las opciones de la tecla de retorno, no veo que se haya creado un button Listo en el keyboard numérico. Veo el button "Listo" en otros types de keyboard si lo cambio de un keyboard numérico a otro, pero no cuando uso un keyboard numérico.

  • Quiero crear un button "Listo" en el keyboard que ocultará el keyboard cuando se presiona
  • Quiero hacer esto debido a la cantidad de bienes inmuebles que ocupa el keyboard
  • Soy muy nuevo en el desarrollo de iOS, por lo que se agradecería la forma más fácil y less compleja de lograr este objective.

¡Gracias por adelantado!

La forma típica de hacerlo es asignar una barra de herramientas que contenga un button a la propiedad inputAccessoryView de la vista de text.

Encontré esta solución en línea, pero implica hacer una image para tu button hecho: http://www.neoos.ch/blog/37-uikeyboardtypenumberpad-and-the-missing-return-key

También puede usar el mismo método para get la vista UIKeyboard mostrada en el ejemplo y hacer lo siguiente, según la sugerencia de @ Jim:

 UIToolbar *keyboardViewToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 206, 320, 44)]; UIBarButtonItem *keyboardDoneButton = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(doneSettingDate)]; UIBarButtonItem *title = [[UIBarButtonItem alloc] initWithTitle:@"Enter Number" style:UIBarButtonItemStylePlain target:nil action:nil]; UIBarButtonItem *spacer1 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; UIBarButtonItem *spacer2 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; NSArray *barButtonItems = [[NSArray alloc] initWithObjects:spacer1, title, spacer2, pickerDoneButton, nil]; [keyboardViewToolbar setItems:barButtonItems]; 

Y agregue esa vista a la vista del keyboard.

Además, como una sugerencia aparte teniendo en count que recién estás comenzando. En iTunes U puede download la class Aplicaciones en desarrollo para iOS de Stanford, es un curso muy completo sobre desarrollo de iOS, disponible de forma gratuita en iTunes Store.

 if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { UIToolbar* KeyBoardToolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)]; KeyBoardToolbar.barStyle = UIBarStyleBlackTranslucent; KeyBoardToolbar.items = [NSArray arrayWithObjects: [[UIBarButtonItem alloc]initWithTitle:[GlobalSettings GetTextBySelectedLocale:@"Done"] style:UIBarButtonItemStyleBordenetworking target:self action:@selector(DismissKeyBoard)], [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil], nil]; [KeyBoardToolbar sizeToFit]; txtMessage.inputAccessoryView = KeyBoardToolbar; } 

Donde txtMessage podría ser UiTextField o UITextView .

 -(void)DismissKeyBoard{ [self.view endEditing:YES]; }