Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ipad 关闭键盘按钮不';不工作0个iOS_Ipad_Uitextfield - Fatal编程技术网

Ipad 关闭键盘按钮不';不工作0个iOS

Ipad 关闭键盘按钮不';不工作0个iOS,ipad,uitextfield,Ipad,Uitextfield,出于某种原因,在我的应用程序中,右下角的Disclease keybaord按钮永远不起作用。我可以在UITextField上正确使用resignFirstResponder,但如果用户尝试使用该按钮,则不会发生任何事情。有什么想法吗 - (BOOL)textFieldShouldEndEditing:(UITextField *)textField{ NSLog(@"shouldend"); return YES; } - (BOOL) textFieldShouldBegi

出于某种原因,在我的应用程序中,右下角的Disclease keybaord按钮永远不起作用。我可以在UITextField上正确使用resignFirstResponder,但如果用户尝试使用该按钮,则不会发生任何事情。有什么想法吗

- (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
    NSLog(@"shouldend");
    return YES;
}

- (BOOL) textFieldShouldBeginEditing:(UITextField *)textField {
    NSLog(@"should begin");
    return YES;
}

其他信息:这是整个应用程序的问题。该按钮在我的应用程序的任何文本字段中都不起作用。

您可能需要实现
UITextFieldDelegate
方法
–textField应该编辑:

- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
    return YES;
}

要测试发生了什么,您还可以在
–textfielddebeginediting:
–textfielddendediting:
中输入简单的
NSLog
s。这将告诉您是否接收到该手势。

shouldBegin被正确调用,但是shouldEnd和didEnd都不会被调用。按下enter按钮时,也会正确调用ShouldReturn。请确保正确设置了连接。如果使用IB,请确保将连接从
UITextField
拖到第一响应者。如果以编程方式设置,请确保设置委托。将连接拖动到第一响应程序是什么意思?代理已经设置好了,但我以前从未处理过与第一响应者的连接。它应该连接到哪个第一响应者?@Brodie:如果设置了委托,那么应该调用
didEnd
shouldEnd
。这是非常正确的-但是委托是在IB中设置的,我甚至只是在代码中设置委托来确保。由于某种原因,他们仍然没有被召唤。奇怪,因为正在调用其他方法。用我的代码更新了问题。在搜索了只讨论正确连接代理的帖子(我正在做)后,我发现了这篇帖子:为那些有我同样问题的人发帖。。。