Я использую приведенный ниже код для перемещения textField вверх, когда я нажимаю на текстовое поле, чтобы клавиатура не закрывала текстовое поле. Это прекрасно работает с портретным представлением в ipad.
Но когда я поворачиваю его в PortraitUpsideDown, он не работает. Вместо того, чтобы textField двигался вверх, двигаясь вниз. Он выполняет противоположные действия в портретной ориентации. Я пробовал все способы, но он не работает. эта проблема.
Это приложение, которое я использую для iPad.
-(void) animateTextField: (UITextView *) textField up: (BOOL) up
{
int txtPosition = (textField.frame.origin.y - 540);
const int movementDistance = (txtPosition < 0 ? 0 : txtPosition); // tweak as needed
const float movementDuration = 0.3f; // tweak as needed
int movement = (up ? -movementDistance : movementDistance);
[UIView beginAnimations: @"anim" context: nil];
[UIView setAnimationBeginsFromCurrentState: YES];
[UIView setAnimationDuration: movementDuration];
self.view.frame = CGRectOffset(self.view.frame, 0, movement);
[UIView commitAnimations];
}
-(void)textViewDidBeginEditing:(UITextView *)textField
{
[self animateTextField: textField up: YES];
}
-(void)textViewDidEndEditing:(UITextView *)textField
{
[self animateTextField: textField up: NO];
}
-(BOOL)textFieldShouldReturn:(UITextView *)theTextField
{
[theTextField resignFirstResponder];
return YES;
}