触摸uitableview时隐藏键盘

Posted

技术标签:

【中文标题】触摸uitableview时隐藏键盘【英文标题】:Hide keyboard when touch uitableview 【发布时间】:2010-08-25 16:53:15 【问题描述】:

我有一个自定义单元格,里面有一个 uitextfield。我想在用户触摸屏幕时隐藏键盘,我在 tableView 上放置了一个自定义 uibutton,在 touch up inside 事件中,我调用了

-(IBAction) hideKeyBoard

    [customcell.textfield resignFirstResponder];

这是用 uitableview 隐藏键盘的正确方法吗,因为它不起作用

【问题讨论】:

【参考方案1】:

不,tableview 上的 UIButton 会阻碍对表格的触摸,以及 alpha 小于 0.1 的视图。

一种方法是继承 UITableView 并覆盖 touchesBegan 以检测触摸。从那里,您有很多选择来处理辞职的第一响应者、通知、委托方法、对文本字段的引用。

【讨论】:

另一种方法是将 resignFirstResponder: 放在您的 didSelectRowAtIndex: 委托方法中,但这也可能取决于您的表视图的设置。 (例如,如果用户单击表格视图内的按钮等)

以上是关于触摸uitableview时隐藏键盘的主要内容,如果未能解决你的问题,请参考以下文章

UITableView onTouch 隐藏键盘

键盘隐藏时 UITableView 略微上升

swift Swift - 用户触摸屏幕时隐藏键盘

单击或触摸另一个视图时清除EditText焦点并隐藏键盘

触摸另一个控件(如按钮)Swift 2.0时如何隐藏键盘

使用自定义 uitableViewCell 按下回车键或单击 uitableView 时隐藏键盘