¿Cómo desplazar UITextView en una UITableViewCell a la parte superior del keyboard?

Necesito crear una UITableView en la que una UITableViewCell contenga un UITextView muy similar al campo Notas en la aplicación Contactos.

Cuando se toca la vista de text, se levanta el keyboard y el cursor se desplaza correctamente hacia la parte superior del keyboard. ¿Cómo puedo hacer eso?

introduzca la descripción de la imagen aquí

Cuando se ingresan más líneas, UITextView se expande correctamente y se desplaza UITableView . ¿Cómo se hace esto?

introduzca la descripción de la imagen aquí

He estado experimentando muchos ejemplos y soluciones de Stack Overflow. La mayoría trata de cambiar el tamaño de la altura de la vista de text. Pude lograr que funcionara. Sin embargo, no he podido encontrar nada que ofrezca vista de celda y vista de text en el modo de edición. Espero que algún experimentado desarrollador de iOS pueda dar una mano aquí. Gracias por adelantado.

Puede lograr esto compensando el contenido de UITableView cuando aparezca el keyboard.

 - (void)keyboardWillShow { CGSize keyboardSize = [[[notification userInfo] objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size; UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0, 0.0, (keyboardSize.height), 0.0); self.tableView.contentInset = contentInsets; self.tableView.scrollIndicatorInsets = contentInsets; [self.tableView scrollToRowAtIndexPath:self.editingIndexPath atScrollPosition:UITableViewScrollPositionTop animated:YES]; 

}

Y restableciendo el set de bordes cuando el keyboard regresa:

 - (void)keyboardWillHide:(NSNotification *)notification { self.tableView.contentInset = UIEdgeInsetsZero; self.tableView.scrollIndicatorInsets = UIEdgeInsetsZero; } 

Para el código y la implementación recomiendo AQUÍ