使用键盘下的UITextFields向上移动UIView

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用键盘下的UITextFields向上移动UIView相关的知识,希望对你有一定的参考价值。

Add this code to the controller
Set controller as the delegate of the all the UITextField s in the UIView
  1. - (void) animateTextField: (UITextField*) textField up: (BOOL) up{
  2. int txtPosition = (textField.frame.origin.y - 140);
  3. const int movementDistance = (txtPosition < 0 ? 0 : txtPosition); // tweak as needed
  4. const float movementDuration = 0.3f; // tweak as needed
  5.  
  6. int movement = (up ? -movementDistance : movementDistance);
  7.  
  8. [UIView beginAnimations: @"anim" context: nil];
  9. [UIView setAnimationBeginsFromCurrentState: YES];
  10. [UIView setAnimationDuration: movementDuration];
  11. self.view.frame = CGRectOffset(self.view.frame, 0, movement);
  12. [UIView commitAnimations];
  13. }
  14.  
  15. - (void)textFieldDidBeginEditing:(UITextField *)textField{
  16. [self animateTextField: textField up: YES];
  17. }
  18.  
  19. - (void)textFieldDidEndEditing:(UITextField *)textField{
  20. [self animateTextField: textField up: NO];
  21. }
  22.  
  23. - (BOOL)textFieldShouldReturn:(UITextField *)theTextField {
  24. [theTextField resignFirstResponder];
  25. return YES;
  26. }

以上是关于使用键盘下的UITextFields向上移动UIView的主要内容,如果未能解决你的问题,请参考以下文章

Swift UITextFields 跳回位置

无法滚动包含 UITextFields 的 UITableViewCells

使用键盘时使用 UIScrollView 滑动并向上移动视图

当使用 Swift 出现键盘时如何向上移动 UIViewController 的内容

使用键盘使带有 TextField 的 UIToolbar 向上移动

当键盘出现并启用滚动时,TextField 向上移动