我正在尝试将我的目标C代码转换为Swift,我已经在目标C中完成了这项工作。我想运行一个名为“doneEnteringText”的方法,当用户点击键盘上的return键时,该键出现在点击某个文本字段时。这是完美工作的目标C代码:

    [_nameTextField addTarget:self action:@selector(doneEnteringText) forControlEvents:UIControlEventEditingDidEndOnExit];

这是我的快速翻译:
nameTextField.addTarget(self, action: doneEnteringText(), forControlEvents: UIControlEvents.EditingDidEndOnExit)

当我试图编译Swift代码时,我得到一个错误,说我“不能用列表类型的参数调用addTarget。。。。
知道为什么吗?任何帮助都会很棒的!

最佳答案

问题是doneEnteringText()是一个方法调用,而不是选择器。因此,它不能等同于Objective-C@selector(doneEnteringText)。在Swift中,你想说它是一个字符串,"doneEnteringText"

关于ios - Swift无法调用UITextField的添加目标,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29689377/

10-11 14:50