【问题标题】:Prevent iOS keyboard from disappearing / reappearing between UITextFields?防止iOS键盘在UITextFields之间消失/重新出现?
【发布时间】:2013-09-05 23:37:52
【问题描述】:

我有一个包含一些UITextField 实例的表单,并且我设置了一个辅助视图,以便在您填写表单时在它们之间来回翻转。丑的是键盘滑开,然后马上滑回来进入下一个表格。

既然它会留在那里,有没有办法让它在整个表单中保持不变,而不是这种丑陋/愚蠢的消失/返回行为?我可能在编程上做错了什么,我在新字段becomeFirstResponder 之前告诉字段resignFirstResponder - 这是原因吗?

【问题讨论】:

    标签: ios objective-c forms uitextfield


    【解决方案1】:

    在文本字段之间切换时不需要调用resignFirstResponder,iOS 会在另一个对象上调用becomeFirstResponder 时为你处理这个问题。如果/当您想隐藏键盘时,您只需要致电resignFirstResponder,例如在表格末尾。

    【讨论】:

    • 那么,如果不调用becomeFirstResponder,我该如何给下一个文本字段一个焦点呢?
    • 如果用户点击下一个文本字段,您什么也不做,如果您需要手动将“焦点”更改为不同的文本字段,只需调用becomeFirstResponder就可以了(无需调用resignFirstResponder “当前”文本字段)。
    • 我已经更新了我的答案,因为我意识到它实际上并没有多大意义:p
    • 它赚了很多,而且你刚刚让我头疼。先生,谢谢您!
    【解决方案2】:

    是的,这就是原因。你可以直接打电话给becomeFirstResponder而不用打电话给resignFirstResponder,你会得到你想要的

    【讨论】:

      【解决方案3】:

      当您选择其他 UITextField 时,最后一个 UITextField 会自动退出第一响应者,因此您不应该每次都 resignFirstResponder。完成UITextField 或用户点击UIView 后只需辞职。

      【讨论】:

        猜你喜欢
        • 2013-01-13
        • 1970-01-01
        • 2020-04-22
        • 2017-12-26
        • 2019-07-11
        • 2017-11-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多