У меня более или менее та же проблема, она была связана с анимацией в segue, похоже, что я делаю sege o отклонение представления без использования resignFirstResponder, разрываю отношение с представлением, я просто изменяю segue, чтобы сделать это программно, как это:
- (IBAction)back:(id)sender {
[textView resignFirstResponder];
[self performSegueWithIdentifier:@"returnScreen" sender:self];
}
А потом в представлении WillAppear я сделал следующее:
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[textView becomeFirstResponder];
....
}