如何让iphone的键盘永不隐藏?

时间:2010-11-19 17:42:24

标签: iphone keyboard uitextfield

我需要键盘永远不会隐藏在我的视图中(例如在登录表单中的facebook应用程序中)

我该怎么办?我用

[textFieldEmail addTarget:self 
                   action:@selector(textFieldDone:) 
         forControlEvents:UIControlEventEditingDidEndOnExit];

当我在键盘上点击完成时,它会隐藏,我尝试了

- (IBAction)textFieldDone:(id)sender {  
[sender becomeFirstResponder];
   //...
}

但它没有帮助,我该怎么办?

由于

3 个答案:

答案 0 :(得分:1)

您需要实现UITextFieldDelegate的以下方法:

- (BOOL)textFieldShouldReturn:(UITextField *)textField

还要确保您已指定UITextField的委托。

答案 1 :(得分:0)

删除所有代码。

通常人们会遇到相反的问题 - 试图找出如何/何时隐藏他们的键盘!

如果你什么都不做 - 默认情况下 - 键盘会保持不动! “完成”键不应该关闭键盘,除非有人在某处调用“resignFirstResponder”。

答案 2 :(得分:0)

为了在facebook中创建登录表单,您可以添加一个可以放在窗口屏幕之外的临时文本字段,当客户端单击登录按钮时,您会在0.1秒后执行延迟选择器。在选择器中,首先使临时文本字段成为第一个响应者然后执行登录逻辑,因此键盘现在保持不变。如果登录失败,您只需将密码文本字段变为第一响应者。以上述方式,它确保始终可以看到键盘。希望它有所帮助。