使用已修改的

时间:2015-06-22 07:33:28

标签: ios swift

在iOs app中隐藏键盘是一个真正的常见问题。要解决它,我使用

class myViewController: UIViewController, UITextFieldDelegate {
@IBOutlet weak var myTextField: UITextField!

之后

override func viewDidLoad() {
    super.viewDidLoad()

    self.myTextField.delegate = self;
}

func textFieldShouldReturn(textField: UITextField) -> Bool {
    self.view.endEditing(true)
    return false
}

但是这次没有用,因为我将myTextField的Editing Changed事件链接到我的一个函数。所以键盘没有隐藏。

在这种情况下如何解决?

4 个答案:

答案 0 :(得分:2)

调用textFieldShouldReturn没有什么特别的隐藏键盘。你必须自己隐藏它。

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

答案 1 :(得分:1)

  

这次没有用,因为我将myTextField的Editing Changed事件链接到我的一个函数

通常情况下,点击返回时你所做的事情仍然有用,我想。但也许还有其他一些我缺失的因素。也许与函数的作用有关。

这是解除键盘的另一种方法。使用ctrl单击拖动从文本字段Did End On Exit

创建
@IBAction func textFieldDoneEditing(sender: UITextField) {
    sender.resignFirstResponder()
}

答案 2 :(得分:0)

希望这可以帮助你:

  func textFieldShouldReturn(textField: UITextField) -> Bool {
    self.view.endEditing(true)
    return false
}

//不要忘记在viewdidload中调用textfield delegate

    override func viewDidLoad() {
    super.viewDidLoad()

    self.myTextField.delegate = self;
}

答案 3 :(得分:0)

感谢您的回答 - 遗憾的是他们没有解决我的问题。

我尝试了-resignFirstResponder但没有成功,直到我添加了键盘的返回按钮。按下它后,键盘会隐藏。