gpt4 book ai didi

ios - 当用户点击文本字段外的其他区域时如何关闭键盘?

转载 作者:IT老高 更新时间:2023-10-28 11:33:08 24 4
gpt4 key购买 nike

今天我尝试在我的 iPod (iOS 6.1.3) 上运行我的代码,我在这里发现了一些有趣的东西......

首先,当我点击文本字段时,键盘会显示出来,但当我点击文本字段外的其他地方时它不会隐藏。

所以我决定用谷歌搜索并找到这个解决方案:

_fieldEmail.delegate = self;
_fieldEmail.returnKeyType = UIReturnKeyDone;

_fieldPassword.delegate = self;
_fieldPassword.returnKeyType = UIReturnKeyDone;

_fieldRegisterName.delegate = self;
_fieldRegisterName.returnKeyType = UIReturnKeyDone;

_fieldRegisterEmail.delegate = self;
_fieldRegisterEmail.returnKeyType = UIReturnKeyDone;

_fieldRegisterPassword.delegate = self;
_fieldRegisterPassword.returnKeyType = UIReturnKeyDone;

它有效...它在键盘底部提供了一个“完成”按钮,现在可以通过按下它来隐藏键盘。

但我这里有两个问题:

  1. 键盘仅在点击“完成”按钮时隐藏。不是通过点击文本字段外的其他区域。我不知道这在 iOS 世界中是否正常,但通常我看到很多应用程序都不是这样。
  2. 有没有办法循环这个过程,所以我没有手动添加我拥有的所有文本字段的委托(delegate)?该怎么做?

这就是我需要知道的全部

最佳答案

下面的代码将适用于所有 UITextField

的 UIView 中的所有组件
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
for (UIView * txt in self.view.subviews){
if ([txt isKindOfClass:[UITextField class]] && [txt isFirstResponder]) {
[txt resignFirstResponder];
}
}
}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[self.view endEditing:YES];
}

关于ios - 当用户点击文本字段外的其他区域时如何关闭键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18756196/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com