【发布时间】:2016-04-25 21:54:16
【问题描述】:
我正在处理一个包含滚动视图的登录屏幕,并且在滚动视图上有两个带有登录按钮的文本字段。
用于调整 iphone 5 屏幕尺寸的滚动视图。我正在使用“标签手势”,因此如果任何用户在文本字段中输入文本并想要隐藏键盘,则可以单击屏幕上的任意位置以隐藏键盘。用于标签手势的函数是
- (void)viewDidLoad {
NSLog(@"login view");
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapGestureCaptured:)];
[self.scrollView addGestureRecognizer:singleTap]; }
- (void)singleTapGestureCaptured:(UITapGestureRecognizer *)gesture
{
[self.view endEditing:YES]; }
我的问题是,当用户使用键盘在文本字段中输入文本时,在输入文本的过程中,键盘会检测到 tab 手势并将键盘隐藏在中间。
我做了什么来解决这个问题:- 1.) 我改变了 [self.view addGestureRecognizer:singleTap];
2.) 我在屏幕顶部放置了一个尺寸为 (0,0,360,400) 的视图,并将手势应用于此视图,以便单击此视图将隐藏键盘,但当用户通过调用手势方法键入键盘时仍然隐藏
3.) 我还在屏幕大小的一半的滚动视图上使用了一个按钮,因此用户可以单击任意位置以隐藏键盘,但在打字时仍然会隐藏,即使键盘隐藏 y 调用按钮的 ibaction 方法强>
【问题讨论】:
标签: ios objective-c keyboard uitapgesturerecognizer first-responder