普通键盘关闭方法我已经掌握了,即写个 textFieldShouldReturn 方法,然后按 return 键就行了。但是数字键盘却没有 return 键。通过网络检索,我发现有人说道重写个 touchesBegan 方法然后里面用 xxx.resignFirstResponder ()就行了。但是我试了还是不行啊。我怀疑要么是这个方法并不正确,要么是因为我的 xcode 爆出了“ Can't find keyplane that supports type 4 for keyboard iPhone-Portrait-NumberPad; using 1730230351_Portrait_iPhone-Simple-Pad_Default ”这个奇怪的错误导致的。
求教了。
1
chisj 2015-09-01 15:20:17 +08:00 1
输入框所在页面的 controller 里:[self.view endEditing:YES]。翻译成 swift 就好了。
|
2
Deffi 2015-09-01 16:06:45 +08:00
1. UITextField.resignFirstResponder ()
2. UITextField.endEditing (true ) 3. self.view.endEditing (true ) |
3
machinemxy OP @chisj 确实如您所言,我新开了个项目用您这种方式成功了。我当前的问题可能是因为,我这些控件都是包在一个 scroll view 当中的,所以用上述的方法就不凑效了。当然我也试过用 scrollView.endEditing (true ),也没有成功呢。
|
4
machinemxy OP @Deffi 谢谢解答。似乎我是因为包在一个 scrollview 当中,导致您所提到的方法均无法在这种情况下发生应有的作用。我这种情况下可有什么 alternative 的解决方法?
|
5
NordicShaw 2015-09-02 03:53:56 +08:00 1
https://github.com/hackiftekhar/IQKeyboardManager
这个可以解决你的需求。 scrollview 也能搞定。 |
6
machinemxy OP @NordicShaw 谢谢推荐
|