我正在尝试使用名为 SwiftValidator 的 pod。
我已尝试按照 GitHub 页面中的说明进行操作,但我不知道如何修复以下错误:
Cannot invoke 'validate' with an argument list of type '(delegate:viewController)'
在这里你可以找到框架: https://github.com/jpotts18/SwiftValidator
编辑:
这是我的代码
override func viewDidLoad() {
super.viewDidLoad()
//Validation
validator.registerField(tfName, rules: [RequiredRule(), FullNameRule()])
}
@IBAction func btnValidatePressed(sender: AnyObject) {
validator.validate(delegate:self) //Error Line
}
//MARK: - Validation
func validationSuccessful() {
}
func validationFailed(errors:[UITextField:ValidationError]) {
// turn the fields to red
for (field, error) in validator.errors {
field.layer.borderColor = UIColor.redColor().CGColor
field.layer.borderWidth = 1.0
error.errorLabel?.text = error.errorMessage // works if you added labels
error.errorLabel?.hidden = false
}
}
最佳答案
错误的原因是您没有实现必要的委托(delegate)。您尝试进行验证的 View Controller 应如下所示:
class YourViewController: UIViewController, ValidationDelegate {
(..)
}
关于swift - 无法使用类型为 'validate' 的参数列表调用 '(delegate:viewController)',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31240976/