首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何关闭iOS键盘?

如何关闭iOS键盘?
EN

Stack Overflow用户
提问于 2011-08-02 09:07:31
回答 11查看 90.6K关注 0票数 77

我有一个UITextfield,我不想再用键盘了。不管我用什么代码,我似乎都不能让键盘消失。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2011-08-02 09:08:46

[myTextField resignFirstResponder]

Here,“显示和隐藏键盘”部分中的第二段。

票数 65
EN

Stack Overflow用户

发布于 2011-08-03 06:22:25

如果您有多个文本字段,并且不知道哪个是first responder (或者您根本无法从编写此代码的位置访问这些文本字段),则可以在包含这些文本字段的父视图上调用endEditing:

在视图控制器的方法中,它看起来像这样:

[self.view endEditing:YES];

该参数强制文本字段重新签署first responder状态。如果您使用委托来执行验证,并且希望在文本字段的内容有效之前停止所有操作,您也可以这样编写代码:

BOOL didEndEditing = [self.view endEditing:NO];
if (didEndEditing) {
    // on to the next thing...
} else {
    // text field must have said to first responder status: "never wanna give you up, never wanna let you down"
}

与将单个文本字段告知resignFirstResponder相比,endEditing:方法要好得多,但是由于某些原因,直到最近我才发现它的存在。

票数 193
EN

Stack Overflow用户

发布于 2015-04-29 03:30:32

我发现了一个endEditingresignFirstResponder失败的案例。在这些情况下,这对我很有效。

ObjC

[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];    
[self setEditing:NO];

斯威夫特

UIApplication.shared.sendAction(#selector(resignFirstResponder), to: nil, from: nil, for: nil)
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6906246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档