iOS - 带容器视图的视图控制器 - 隐藏键盘

时间:2013-06-21 13:38:34

标签: iphone ipad cocoa-touch uiviewcontroller uikit

我有一个包含3个容器视图的视图控制器。在其中一个容器视图中,有一个文本字段,点击键盘应该隐藏在其中。我需要知道在视图控制器上检测到触摸时如何隐藏键盘。请注意,当我点击容器视图时,不会在parentViewController上调用“touchesBegan”方法。

3 个答案:

答案 0 :(得分:0)

在视图控制器上实现touchesBegan。从那里调用视图控制器视图上的endEditing:

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

答案 1 :(得分:0)

您可以使用UITapGesture。

你的viewcontroller的viewDidLoad中的

写这个

UITapGestureRecognizer* singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
singleTap.numberOfTapsRequired = 1;
singleTap.numberOfTouchesRequired = 1;
[self.view addGestureRecognizer: singleTap];

并在其处理程序方法

 -(void)handleSingleTap :(UIGestureRecognizer*)ges
{
 [yourtextField resignFirstResponder];
}

答案 2 :(得分:-1)

将viewController的UIView和其他容器UIViews更改为UIButton,然后使用以下代码将它们绑定到按钮的触摸事件之一到IBAction:

-(IBAction)press:(id)sender
{
   [yourTextField resignFirstResponder];
}