Vah*_*yan 3 iphone keyboard objective-c ios
在我的项目中,我有几个页面,包含许多UITextField-s.所以我认为最好创建一个名为hideKeyboard的实用程序方法,它在任何情况下都可以工作.这是我的解决方案,但实际上这段代码中的某些东西感觉不对.有没有更好的解决方案呢?
+(void) hideKeyBoard {
UITextField* t = [[UITextField alloc] initWithFrame:CGRectNull];
[[UIApplication sharedApplication].keyWindow addSubview:t];
[t becomeFirstResponder];
[t resignFirstResponder];
[t removeFromSuperview];
}
Run Code Online (Sandbox Code Playgroud)
Pau*_*l.s 17
一个非常简单的解决方案是使用此处所述的响应链
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder)
to:nil
from:nil
forEvent:nil];
Run Code Online (Sandbox Code Playgroud)
通过向其发送动作,将nil其发送到响应者链中,当然,第一个有机会响应的对象是firstResponder
旁注 我看过这篇文章的唯一原因是因为每周时事通讯iOSDevWeekly,这绝对值得订阅
我想蛮力的做法就是这样
[[[UIApplication sharedApplication] keyWindow] endEditing:YES];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1859 次 |
| 最近记录: |