TXViewKeyboardResizer 1.0.3

TXViewKeyboardResizer 1.0.3

测试已测试
Lang语言 Obj-CObjective C
许可 MIT
发布上次发布2015年10月

Toshiro Sugii 维护。



  • 作者
  • rtoshiro

当键盘出现时,它会自动调整您的 UIView 的大小。

它可以与任何类型的 UIView 一起使用。

如果您的视图扩展了 UIScrollView,您需要在调整大小后调整您的 UIScrollView.contentSize。

这受到 Android 中的 android:windowSoftInputMode="adjustResize" 的启发。

用法

首先,选择当键盘出现时将要调整大小的 UIView。

Controller

然后,您需要检查您的 Autolayout 配置或 Autoresize 值。

在这里,我将使用 Autoresize,因为它在这种情况下要简单一些。

Autoresize

在配置了 autoresize 之后,当 UIView 调整大小时,我们的 UITextField 将自动定位。

现在我们可以在我们的 UIViewController 中调用 startKeyboardResizerObserver(WithDelegate:)

- (void)viewWillAppear:(BOOL)animated
{
  [super viewWillAppear:animated];

  [self.scrollView startKeyboardResizerObserverWithDelegate:self];
}

我们必须记住,在完成键盘操作后停止观察

- (void)viewWillDisappear:(BOOL)animated
{
  [super viewWillDisappear:animated];

  [self.scrollView stopKeyboardResizerObserver];
}

委派

然后,您可以根据需要调整您的视图

- (void)viewWillResize:(UIView *)view;
- (void)viewDidResize:(UIView *)view;
- (void)viewDidTap:(UIView *)view;

例如,我们可以关闭键盘

- (void)viewDidTap:(UIView *)view
{
  for (UIView *subview in self.scrollView.subviews)
  {
    if ([subview isMemberOfClass:[UITextField class]])
      [((UITextField *)subview) resignFirstResponder];
  }
}

Resize

需求

iOS 6.+

安装

TXViewKeyboardResizer 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中

pod "TXViewKeyboardResizer"

许可

TXViewKeyboardResizer 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。