【问题标题】:iOS 5: Hide keyboard in UITableViewController with static cells and textfieldsiOS 5:使用静态单元格和文本字段在 UITableViewController 中隐藏键盘
【发布时间】:2012-01-05 03:03:11
【问题描述】:

我正在开发一个具有 UITableViewController 和静态单元格的应用程序。这些静态单元格是自定义单元格,其中包含 UITextFields。如果用户触摸这些文本字段之一,则会弹出键盘。所以,在那之后,我需要做的是能够通过触摸背景上的任何东西来关闭键盘。我的意思是表格视图背景、它的单元格和这些单元格的内容(例如文本字段)。

我曾经通过在所有其他子视图的前面放置一个视图并捕获 Touch Inside Up 事件来关闭键盘来做到这一点。不幸的是,这次我不能这样做,因为我使用的是 UITableViewController,而且我无法将它切换回 UIViewController,因为我已经对这些静态单元格做了很多工作。

【问题讨论】:

    标签: iphone ios5 uitableview


    【解决方案1】:
     -(void)touchesBegan: (NSSet *)touches withEvent:(UIEvent *)event{
        
    [yourTextField resignFirstResponder];
     }
    

    试试看。

    编辑

    嗨,

    我有你的答案:

    -(BOOL)isFirstResponder
    

    当您在文本字段中输入内容时,它将成为第一响应者并出现键盘。如果 [textField isFirstReponder] 返回 YES,您就知道键盘处于活动状态。

    您可能还会看到该链接。也许它会对您有所帮助。

    how to hide the keyboard when empty area is touched on iphone

    【讨论】:

    • 它只在我触摸一个单元格时起作用......但我需要的是当用户触摸表格视图的背景、其单元格或它所触及的任何其他子视图(包括其他文本视图)时关闭键盘)。
    【解决方案2】:

    嗯,我自己找到了答案。我需要做的只是以编程方式将 UIView 放在前台,然后按照我在原始帖子中所说的去做。我以前无法做到这一点,因为我试图从 Interface Builder 中实现这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-16
      • 1970-01-01
      • 2018-12-22
      • 2013-05-17
      • 2013-12-23
      • 2014-03-18
      • 2011-01-19
      • 1970-01-01
      相关资源
      最近更新 更多