我有一个故事板,其中包括视图之间的导航。来回,也有可能一直跳到主屏幕。
基本上,它的工作原理如下:
当用户从视图1移动到视图2时,键盘和所有内容都能正常工作。但是,当从视图3移动到视图2,或从视图3移动并重新开始时,键盘会不显示。
在代码中,我在viewDidAppear方法中成为了FirstResponder。此外,它将在加载视图3时resignFirstResponder。另一个有趣的事实是,当第二次调用becomeFirstResponder时,它确实返回NO(当它第一次返回YES时)。此外,返回此视图时,即使文本字段为userInteractionEnabled,也无法选择文本字段。
我真的被困在这里,所以任何帮助都非常感谢。 我已经看到了几个类似的问题,但没有找到解决方案:
答案 0 :(得分:7)
我能够在我的代码中找到问题所在。自己回答这个问题,因为它也可能对其他人有所帮助。
我的问题是我没有真正得到正确的事件顺序。我有一个按钮可以移动到下一个文本字段,如果一切都完成,它将移动到下一个屏幕。这导致在切换到新屏幕时调用并且不释放(第一个响应号)的
。我想我能给出的主要建议(至少最终对我有用),只是通过所有的becomeFirstResponder并确保在移动到下一个屏幕之前发布它。