我用UIScrollView创建了UIViewController。在UIScrollView中,我添加了一些UITextField用于数据输入。当其中一个UITextField成为firstResponder(键盘出现在屏幕上)并且我试图用滑动手势弹出这个UIViewController时,我有以下效果:
UIViewController的视图正在下降,我可能会在当前的UIViewController中看到之前的UIViewController的一部分。你有任何想法,如何解决这个问题?
我发现在使用自定义后退操作时,交互式弹出手势会停止工作。
要解决此问题,您可以将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
}
}