試圖隱瞞了iOS鍵盤時,返回鍵被擊中,而是它會暫停,並讓我在圖像中看到的錯誤。下面是我使用的代碼:如何隱藏鍵盤時,返回鍵擊 - 斯威夫特
@IBOutlet weak var scoreText: UITextField!
func textFieldShouldReturn(_ scoreText: UITextField) -> Bool {
self.view.endEditing(true)
return false
}
試圖隱瞞了iOS鍵盤時,返回鍵被擊中,而是它會暫停,並讓我在圖像中看到的錯誤。下面是我使用的代碼:如何隱藏鍵盤時,返回鍵擊 - 斯威夫特
@IBOutlet weak var scoreText: UITextField!
func textFieldShouldReturn(_ scoreText: UITextField) -> Bool {
self.view.endEditing(true)
return false
}
你的問題是,你沒有爲了使用該方法委託一個文本框。首先,你的類必須包含UITextFieldDelegate
協議:
class yourClass: UIViewController, UITextFieldDelegate{ ... }
而且在viewDidLoad
添加此還有:
scoreText.delegate = self
然後,你必須改變這一點:
func textFieldShouldReturn(_ scoreText: UITextField) -> Bool {
self.view.endEditing(true)
return false
}
這樣:
func textFieldShouldReturn(_ scoreText: UITextField) -> Bool {
self.view.endEditing(true)
return true
}
最終代碼:
class yourClass: UIViewController, UITextFieldDelegate{
@IBOutlet weak var scoreText: UITextField!
override func viewDidLoad(){
super.viewDidLoad()
scoreText.delegate = self
}
func textFieldShouldReturn(_ scoreText: UITextField) -> Bool {
self.view.endEditing()
return true
}
如果不工作,問題是不是textFieldShouldReturn
功能。請檢查您的插座連接。
試試這個
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
沒有運氣,同樣的問題。 – stevetheipad
@stevetheipad您是否已將視圖控制器設置爲遵循UITextField委託? – Mochi
對不起,你的意思是一個IBOutlet?如果是這樣,是的我添加了一個UITextField。 – stevetheipad
錯誤這是所有你必須爲了做它的工作 –
有這個問題:http://i.imgur.com /PAWVdrb.png順便說一下,爲什麼我需要委託TextField而不是標籤,按鈕等? – stevetheipad
@stevetheipad 1 - 因爲** textFieldShouldReturn **函數包含在** UITextFieldDelegate **中; 2 - 嘗試添加你的論點:** self.view.endEditing(真)**,我可能已經錯過了,在我的答案 –