¿Cómo puedo hacer que el keyboard se muestre con mi UITextField en mi UITableView?

Tengo un UITextField en una UITableViewCell en una UITableView . Todos estos están definidos en Interface Builder. UITableView está conectado a un UITableViewController y está configurado como su UITableViewController datos y delegado. El UITextField se hace reference a través de un IBOutlet / property textEmail . Todo esto está dentro de una vista con tabs si eso importa. La interacción del usuario está habilitada para todos estos.

Todo se muestra bien, pero el keyboard no aparece cuando se selecciona UITextField . Puedo ver que se llama a textFieldDidBeginEditing , pero no a keyboard. He intentado hacer una llamada a becomeFirstResponder en viewWillAppear y se llama, pero aún no hay keyboard:

 - (void)viewWillAppear:(BOOL)animated { NSLog(@"View will appear"); [textEmail becomeFirstResponder]; } 

También he intentado poner la llamada directamente en textFieldDidBeginEditing y también en una IBAction conectada a un evento táctil con el mismo resultado.

¿Solo tiene una sola tabla vista personalizada a la vez? Si es así, sería mucho más fácil no usar una vista de tabla para lo que intentas hacer.

Si tiene varias celdas (o una celda), debe asegurarse de que su class es un UITextFieldDelegate. Luego, en su function cellForRowAtIndexPath, obtenga el campo de text actual y asigne el delegado del textField a sí mismo.

A continuación, agregue la siguiente function a su implementación:

 - (void)textFieldDidBeginEditing:(UITextField *)textField { [textField becomeFirstResponder]; }