使用显示的键盘弹出UIViewController

时间:2019-03-15 17:16:32

标签: ios objective-c cocoa-touch uikit

我创建了带有UIScrollView的UIViewController。在UIScrollView中,我添加了一些UITextField用于数据输入。当一个UITextFields成为firstResponder(键盘出现在屏幕上)并且我试图用滑动手势弹出此UIViewController时,我将产生以下效果:enter image description here

UIViewController的视图下降了,我可能会在当前UIViewController中看到以前的UIViewController的一部分。您有什么想法,如何解决?

1 个答案:

答案 0 :(得分:0)

我发现使用自定义后退动作时,交互式弹出手势会停止工作。

要解决此问题,您可以将InteractivePopGestureRecognizer.delegate属性设置为nil。

尝试一下:

class NavigationController: UINavigationController, UIGestureRecognizerDelegate {

    /// Custom back buttons disable the interactive pop animation
    /// To enable it back we set the recognizer to `self`
    override func viewDidLoad() {
        super.viewDidLoad()
        interactivePopGestureRecognizer?.delegate = self
    }

    func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool {
        return viewControllers.count > 1
    }
}