gpt4 book ai didi

ios - 隐藏键盘 IOS Swift

转载 作者:行者123 更新时间:2023-11-30 13:41:45 31 4
gpt4 key购买 nike

我遇到以下问题:

我有两个 TextField,一个具有默认行为,另一个捕获 textFieldDidBeginEditing 方法委托(delegate),以呈现具有PresentationStyle(自定义)和 TransitionStyle(CrossDissolve)的 UIViewController。到目前为止一切正常。但是,如果我编辑第一个文本字段(并保持键盘打开),然后转到第二个文本字段,则键盘打开,我无法关闭它(就好像第一个文本字段失去焦点一样,甚至在以下情况下也不会调用 textFieldShouldReturn我按下按钮简介)。

我尝试过:

  • TextFieldDidEndEditing(用于调用resignFirstResponder)
  • 在viewWillDissaper方法中(我也称为resignFirstResponder)

    func textFieldShouldReturn(textField: UITextField) -> Bool {
    textField.resignFirstResponder()
    return true
    }

    func textFieldDidEndEditing(textField: UITextField) {
    print("Resign Last TextField")
    textField.resignFirstResponder()
    }

    func textFieldDidBeginEditing(textField: UITextField) {
    print("Did Begin editing")
    if textField == self.departing || textField == self.returning{
    textField.resignFirstResponder()
    self.lastTextFieldSelected = textField

    let datePickerViewController = Util.getViewController("DatePickerViewController") as! DatePickerViewController
    datePickerViewController.dateStyle = NSDateFormatterStyle.ShortStyle
    datePickerViewController.modalTransitionStyle = UIModalTransitionStyle.CrossDissolve
    datePickerViewController.modalPresentationStyle = UIModalPresentationStyle.Custom
    datePickerViewController.datePickerDelegate = self

    self.presentViewController(datePickerViewController, animated: true, completion: nil)
    }
    }

编辑:我尝试使用 self.view.endEditing(true) 什么都不做。

我做了一个小例子(我检查的是 textFieldShouldBeginEditing 允许我关闭键盘。): https://github.com/Abreu0101/TextFieldBug

最佳答案

看起来您的 textFieldDidEndEditing 和其他方法甚至没有被调用。确保设置 UITextField 的委托(delegate):

textField.delegate = self

同时在您的类中导入 UITextFielDelegate

希望有帮助:)

关于ios - 隐藏键盘 IOS Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35485846/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com