2012-08-27 73 views
0

我不知道为什么我的键盘没有关闭文本框完成编辑。这是文本字段委托的内容。 (我已经实现了两种方法仅用于测试目的):UIKeyboard没有关闭,因为它应该

-(void)textFieldDidEndEditing:(UITextField *)textField 
{ 
    [textField resignFirstResponder]; 
} 

- (BOOL)textFieldShouldReturn:(UITextField *)textField 
{ 
    [textField resignFirstResponder]; 
    return NO; //I've also tried YES 
} 

这两种方法都被正确调用,但键盘保持活动状态。为什么? 感谢

+0

您是否将textField的委托设置为控制器? – zeiteisen

+0

是的,否则问题中的两种方法将不会被调用。 – aneuryzm

回答

0

首先,textFieldShouldReturn应返回YES。

第二,确保给出UITextField的委托是文件的所有者

如果使用界面生成器,你可以控制的阻力做

如果从代码中创建它,比viewDidLoad您必须拥有以下行[yourTextField setDelegate:self];

+0

第一点:在代码中你可以看到我添加了评论,我尝试了YES和NO。第二点:它设置,否则在我的问题中的方法,不会被调用 – aneuryzm

+0

也许设置textfield的returnkey完成? –

+0

我试过了,但它仍然不起作用。很奇怪。 – aneuryzm

0

尽量覆盖disablesAutomaticKeyboardDismissal

- (BOOL)disablesAutomaticKeyboardDismissal { 
    return NO; 
} 

我在昨晚同样的问题和固定对我来说。

+0

谢谢,我已经尝试过,但并没有解决问题 – aneuryzm

+0

这是iPhone,iPod Touch,iPad或设备组合的具体问题吗?您的文本字段是什么类型的视图? UIView,UIView与UIViewController等? – Jeremy1026

+0

这是一款iPad。一个UITextField。带有xib文件的UIViewController,包含视图和这些字段。 – aneuryzm

相关问题