【问题标题】:Is there any universal solution for scrolling both UITextView and UITextField above the keyboard on screen是否有任何通用解决方案可以在屏幕上的键盘上方滚动 UITextView 和 UITextField
【发布时间】:2014-01-31 09:18:06
【问题描述】:

当键盘出现在屏幕上时,如何在 UITableView 或 UIViewController 中滚动 UITextField、UITextview。

【问题讨论】:

标签: ios iphone uitextfield uitextview


【解决方案1】:

我正在使用IQKeyboardManager。一般来说,就像将[IQKeyBoardManager installKeyboardManager]; 添加到viewDidLoad 方法一样简单。

【讨论】:

    【解决方案2】:

    只需处理textView/textField 委托方法并相应地调整您的视图框架。

    您还可以在滚动视图中添加所有控件,然后在以下委托方法中向上/向下滚动

    -(void)textFieldDidBeginEditing:(UITextField *)textField
    {
        scrollView.frame = CGRectMake(scrollView.frame.origin.x,
                                      scrollView.frame.origin.y,
                                      scrollView.frame.size.width,
                                      scrollView.frame.size.height - 215 + dynamicHeight);
    }
    
    -(void)textFieldDidEndEditing:(UITextField *)textField
    {
        scrollView.frame = CGRectMake(scrollView.frame.origin.x,
                                      scrollView.frame.origin.y,
                                      scrollView.frame.size.width,
                                      scrollView.frame.size.height + 215 - dynamicHeight);
    }
    

    您还可以设置通知以触发-keyboardWillShow-keyboardWillHide 方法。

    在 github 上有这些 3rd 方库可用。
    只需谷歌它,你会发现它们的负载。

    https://github.com/michaeltyson/TPKeyboardAvoiding

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-01
      • 2017-11-10
      • 2014-03-13
      • 2011-01-23
      • 2022-11-01
      • 1970-01-01
      • 2017-10-22
      相关资源
      最近更新 更多