Hacer que el keyboard desaparezca cuando UITableView se desplaza

Tengo un UITextField en la parte superior de mi Vista de tabla, después de seleccionar el campo de text, quiero que el keyboard desaparezca. Sé llamar a [[self view] endEditing:YES]; pero no sé cómo verificar el desplazamiento. Un buen ejemplo de esto es IMessage, cuando el keyboard está a la vista, puede desplazarse hacia arriba para contraerlo, quiero que mi vista de tabla funcione de manera inversa.

UITableView es una subclass de UIScrollView . Al ser el delegado de la tabla (implementando <UITableViewDelegate> ) también es el delegado de vista de desplazamiento ( <UIScrollViewDelegate> ) y, como tal, puede implementar:

 - (void)scrollViewDidScroll:(UIScrollView *)scrollView 

A continuación, recibirá una notificación cada vez que se desplace la vista de la tabla. A continuación, también puede utilizar scrollView.contentOffset para comprobar dónde se ha desplazado la tabla (en qué dirección se desplaza).

 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { [textField resignFirstResponder]; } 

Pruebe otro método en UIScrollViewDelegate si necesita otro comportamiento.

Llame a resignFirstResponder donde corresponda.

Parece que usa UITextField en sus celdas. Use el protocolo UITextFieldDelegate para saber cuándo UITextField finaliza su edición:

 -(void)textFieldDidEndEditing:(UITextField*)textField { [textField resignFirstResponder]; }