在推送新的视图控制器之前移除键盘
Posted
技术标签:
【中文标题】在推送新的视图控制器之前移除键盘【英文标题】:Remove keyboard before pushing new viewcontroller 【发布时间】:2014-07-01 07:49:10 【问题描述】:当我选择一些文本字段时,我会推送一个新的视图控制器。所以我必须在加载新的视图控制器之前隐藏键盘。但是当新视图出现时,键盘仍然存在。 resignkeyboard 和 [self.view endEditing:YES];不起作用。如何删除新视图控制器的键盘。谢谢。
【问题讨论】:
你能显示代码吗?或者应该尝试 [yourTExtField resignFirstResponder]; 您允许用户在文本字段中输入任何内容吗? If No 表示在委托方法中调用 resign firstResponse didBeginEditing.. 我不能给你看任何代码。因为没有什么可显示的。这只是一个普通的 UITextField。:/ 我允许用户交互。因此,每次我触摸文本字段时都会触发开始编辑委托。我将 resignfirstrepsponder 和 endediting 函数放入 viewWillLayoutSubviews。 viewwilldisappear 或 viewdiddisappear 不能用于这种情况。因为我使用 addSubview 方法来调用带有动画的新视图控制器。但它们都不起作用。 参考此链接***.com/questions/5478719/uitextfield-hide-keyboard/… 它没有用。它只是不会消失。 :/当我点击必须显示没有键盘的文本字段时,它不会消失。前一个文本字段的键盘只会出现。也许我不必使用文本字段。 【参考方案1】:在去新的 viewController 之前做
[self.view endEditing:YES];
或
对所有你的TextFields调用resignFirstResponder方法。
【讨论】:
【参考方案2】:正如 Madhur 所说的那样,如果你有 [yourTExtField resignFirstResponder];转到新视图控制器之前的代码应该可以工作。如果您输入代码 sn-p 那么我可以尝试为您提供确切的解决方案。
【讨论】:
以上是关于在推送新的视图控制器之前移除键盘的主要内容,如果未能解决你的问题,请参考以下文章