gpt4 book ai didi

xcode - 如何沿 InteractivePopGestureRecognizer 滑动键盘?

转载 作者:行者123 更新时间:2023-12-01 06:31:17 24 4
gpt4 key购买 nike

我想知道如何使用可见键盘滑动 ViewController?

在 iOS 7 中,我可以左右滑动 ViewController,但键盘保持不动。

简而言之,我想进入以下状态:

enter image description here

谢谢!

最佳答案

更新:

我不能推荐原始解决方案。虽然它表现良好(当它完全执行时),但它是一个不可靠的黑客,并且很容易破坏流行手势识别器。

我的同事 Dave Lyon使用 iOS 7 View Controller 转换提出了一个很好的解决方案,并将其打包到一个 pod 中:

https://github.com/cotap/TAPKeyboardPop

安装后,只需导入主文件即可。

原来的:

我很想知道是否有更好的方法来做到这一点,但我能够通过将键盘的 View 添加为 View Controller 主 View 的 subview 来实现该行为:

- (void)viewDidLoad
{
[super viewDidLoad];

self.textView.inputAccessoryView = [UIView new];
}

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

NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:nil];
}

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

[[NSNotificationCenter defaultCenter] removeObserver:self];
}

- (void)keyboardWillHide:(NSNotification *)note
{
if (self.textView.isFirstResponder) {
UIView *keyboardView = self.textView.inputAccessoryView.superview;
if (keyboardView) {
dispatch_async(dispatch_get_main_queue(), ^{
[self.view addSubview:keyboardView];
});
}
}
}

我发现您还可以使用手势为键盘设置动画(通过 addTarget:action: ),但性能很差,如果过早取消手势,则不能完全设置动画。

关于xcode - 如何沿 InteractivePopGestureRecognizer 滑动键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20827899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com