【发布时间】:2011-07-08 18:38:34
【问题描述】:
如何在用户按下“完成”或点击 UITextField 后隐藏键盘?
我已将此代码放入 AppDelegate 中:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return NO;
}
我已将 IB 中的 UITextField 委托链接到文件的所有者..
我做错了什么?
EDIT: Changin return NO -> return YES 什么都不做。我打开了 IB 并单击文件的所有者-> 连接选项卡,有多个引用出口都指向 UITextfields。它仍然不工作..
更新:
我将此添加到我的函数中:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
int i = 5;
NSLog(@"%d", i);
return YES;
}
在将焦点设置到文本字段后按回车键时,控制台没有打印任何内容...所以它没有调用该函数。我是否错误地连接了某些东西?我也将返回键用作“完成”,不确定这是否有影响?
更新:
我的 AppDelegate 中有我的 testfieldShouldReturn 函数,而不是我的视图控制器。我的错误....感谢您的帮助
【问题讨论】:
-
你的视图控制器是否采用
UITextFieldDelegate协议? -
检查谁是文件的所有者。你有 nib 的视图控制器吗?如果是这样,请将
textFieldShouldReturn:放入视图控制器。 -
@dasdom,谢谢。你解决了我的问题
-
请检查 CharlieMezak 的答案作为正确答案,因为他也指出了这一点。
标签: iphone objective-c xcode ios4