ios - 关闭 UIScrollView 中的键盘

标签 ios objective-c swift uiscrollview keyboard

好的,我在 UIScrollView 中有几个 UITextFieldsUITextViews,我想将键盘设置为随时消失scrollview 被触摸或滚动(当然,当您在文本字段/ View 内触摸时除外)。

我目前的尝试是将 UIScrollView 替换为子类,并将其设置为在 touchesBegan 内调用 removeKeyboard 函数(在主视图 Controller 内定义)方法。但是,这只会在正常触摸时移除键盘,而不是在简单地 ScrollView 时。那么,在 UIScrollView 中移除键盘的最佳方法是什么?

提前感谢您的帮助。

最佳答案

这是在 iOS 7.0 及更高版本中实现此目的的最简洁方法。

scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;

或者

scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive;

在 swift 中:

scrollView.keyboardDismissMode = .onDrag

或者

scrollView.keyboardDismissMode = .interactive

关于ios - 关闭 UIScrollView 中的键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5143873/

相关文章:

ios - UIRefreshControl 闪烁自调整单元格

ios - 指向原始类型的 Objective C 指针

ios - 如何检测何时点击注释的 UICalloutView?

ios - 在 Objective-C Project 的 Swift 文件中导入 Objective-C 类

objective-c - 在 dealloc 中释放实例变量的正确方法,Objective C

ios - 将 SKSpriteNode 保持在屏幕范围内

Swift:带有 Map 的 NSCountedSet

ios - 在 View Controller 之间传递数据(是的,我知道......)

iOS Swift 自定义单元格函数

swift - Apollo-IOS 构建错误 "Command PhaseScriptExecution failed with a nonzero exit code"