【发布时间】:2011-02-19 04:57:00
【问题描述】:
这可能是一个愚蠢的问题,但我在文档中找不到答案。弹出式键盘上的“完成”按钮是否总是导致键盘消失?我在网上看到很多这样的代码:
- (BOOL)textFieldShouldReturn:(UITextField *)theTextField {
[theTextField resignFirstResponder];
return YES;
}
当我按下“完成”按钮时,键盘弹出,UITextField 退出第一响应者。
我假设按下“完成”按钮不会导致 UITextField 变为 resignFirstResponder,但这种行为有时会发生变化。
我在 OS 3.0 - 3.1.3 上调试
【问题讨论】:
-
显然我没有足够的代表来为 nevan king 的答案添加评论,所以我会在这里提到,对于他的解决方案,没有必要将类设为 UITextFieldDelegate。 UITextFieldDelegate 协议只定义了一些发送给委托的消息,询问文本字段是否应该辞职,它确实辞职等......任何对象都可以按照他的答案实现的方式接收操作,只需按照他的方式定义他们的方法完成与 textFieldFinished。
标签: iphone objective-c cocoa-touch keyboard uikit