我对swift相当新,并且正在开展一个包含文本字段的项目。当我测试应用程序时,我注意到键盘返回键不起作用,我无法退出键盘。这有什么原因吗?可以通过swift实现返回键的功能吗?
此外,我最近正在开发的另一个应用程序,我将文本字段的键盘切换到数字键盘,我发现数字键盘上没有返回键,所以再一次,我似乎无法看到弄清楚如何退出它。我怎么能解决这个问题?
对不起,我对Apple设备也很陌生......
答案 0 :(得分:5)
您想在视图控制器中实现UITextFieldDelegate
:
class ViewController: UIViewController,UITextFieldDelegate //set delegate to class
然后在viewDidLoad
中将textField委托设置为self。
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
}
然后您可以添加在按下返回键时运行的此方法,以及关闭键盘的resignFirstResponder
:
func textFieldShouldReturn(textField: UITextField!) -> Bool { //delegate method
textField.resignFirstResponder()
return true
}
答案 1 :(得分:1)
对于像我这样的其他新手,如果您在遵循Joe的优秀指令后仍然没有在模拟器上安装键盘,请转到模拟器的菜单并选择硬件/键盘/切换软件键盘。
答案 2 :(得分:0)
请注意,在Swift 4中,textFieldShouldReturn
的第一个参数名称似乎必须用下划线省略。在其他情况下,Swift不会调用该函数:
func textFieldShouldReturn(_ textField: UITextField!) -> Bool { // use "_"
return true;
}