【发布时间】:2014-07-02 21:54:14
【问题描述】:
我学习了如何在单击返回键或用户触摸文本字段外时关闭键盘。
一种方法是委托一个类来管理文本字段并编写代码:
- (BOOL) textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES; //I'm not sure whether I choose YES or NO
}
另一种方式如下:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
if (touchToDismissKeyboard.phase == UITouchPhaseBegan) {
[self.firstTextField resignFirstResponder];
}
}
但是,通过上述任何一种方法,我发现其他接口已“启用”,例如与文本字段在同一视图上的分段控件或开关。此外,当这些启用的界面被点击时,键盘仍然在屏幕上。
然后,我的问题是如何在键盘出现时使其他界面不可用(“启用 = NO”),以及如何在不更改其他界面值的情况下通过触摸键盘或文本字段之外的任何位置来关闭键盘。
【问题讨论】:
-
很抱歉,我无法准确地解释我的情况。我的问题是如何在编辑文本字段(出现键盘时)时使键盘以外的其他界面不可点击,我认为这与您建议的问题不同。无论如何,我终于找到了解决问题的方法,但是感谢您的评论,我会记住在我提问之前搜索 Q&A 这可能对我有帮助。
标签: ios objective-c