好的,我在UITextFields
中有几个UITextViews
和UIScrollView
,我想将键盘设置为在触摸或滚动scrollview
时消失(当然,当您在文本字段/ View 内向下触摸时除外)。
我目前的尝试是用子类替换UIScrollView
,并将其设置为在touchesBegan方法内调用removeKeyboard函数(在主 View Controller 内定义)。但是,这仅会为正常触摸而移除键盘,而不是仅在 View 滚动时移除。那么,移除UIScrollView
内部键盘的最佳方法是什么?
在此先感谢您的帮助。
最佳答案
这是在iOS 7.0及更高版本中实现此目标的最干净的方法。
scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;
要么
scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive;
在Swift中:
scrollView.keyboardDismissMode = .onDrag
要么
scrollView.keyboardDismissMode = .interactive