ios - 当文本字段位于 ScrollView 内时,如何使键盘具有像默认应用程序中一样的行为?

标签 ios ios5 ios6

我在 Storyboard中创建了简单的应用程序(只有一个 Controller ),我将 ScrollView 和 ScrollView 放在 UITextFileds 中。在 Controller 内部我添加了类似的功能

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [self.name resignFirstResponder];
    [self.number resignFirstResponder];

    // I have tried with and without this line but doesn't work
    [self.scrollView resignFirstResponder];
}

(name、number是UITextField的Outlet,scrollView是UIScrollView的Outlet)。当我单击任何这些文本字段时,键盘会弹出,但当我完成输入时,我无法隐藏键盘。 (在以前的版本中,当我单击文本字段时,我没有 ScrollView 和键盘隐藏)。如何使键盘具有像默认应用程序中一样的行为,如何隐藏?

最佳答案

我假设您只想能够在键盘上点击一下并将其关闭,对吗?只需这样做:

 UITapGestureRecognizer *myTapz = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(userTapped)];
    myTapz.numberOfTapsRequired=1;
    myTapz.cancelsTouchesInView=NO;
    [self.view addGestureRecognizer:myTapz];//or do self.WhateverYourOtherViewIsCalled..tableview? scrollView?
    [myTapz release];

然后在选择器中:

-(IBAction)userTapped
{
  [whateverYourTextFieldIsCalled resignFirstResponder];
}

关于ios - 当文本字段位于 ScrollView 内时,如何使键盘具有像默认应用程序中一样的行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14971963/

相关文章:

ios - 打开弹出窗口时禁用 tableview 中的滚动

ios - 如何找到两个字符串之间的子字符串?

ios - 使 UICollectionViewCell 出现在 UICollectionView 的中心

ios6 - 使 UIActivityViewController 图标中的自定义项目变得多彩?

ios - UISplitViewController - 在折叠模式下关闭/弹出代码中的详细 View Controller

ios - 使用文件管理器新目录不起作用

ios - 不同的横向和纵向设计

ipad - 在 Storyboard 中布局 View ,然后从代码中将其加载到 PopOver 中?

iphone - 如何解决 NSNumberFormatter 2,147,483,647 问题

storyboard - Storyboard在 iOS 5 中如何工作?