【发布时间】:2016-06-30 00:50:38
【问题描述】:
我希望当 swift 中的一项验证失败时,错误图标图像将自动显示在 UITextField 中。
对于那个 UITextField,我创建了自定义 UITextField,如下所示
class OvalTextField: UITextField {
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)!
createBorder()
}
required override init(frame: CGRect) {
super.init(frame: frame)
createBorder()
}
func createBorder(){
let errorImg = UIImageView (frame: CGRectMake(0, 0, 30, 30))
errorImg.image = UIImage(named: "error")
errorImg.contentMode = UIViewContentMode.Left
self.layer.borderWidth = 1.0
self.layer.borderColor = UIColor(red:0.93, green:0.93, blue:0.93, alpha:1.0).CGColor
self.layer.cornerRadius = self.frame.size.height / 2
self.layer.masksToBounds = true
let gapLabel = UIView (frame: CGRectMake(60, 0, 10, 40))
self.leftView = gapLabel
self.leftViewMode = UITextFieldViewMode.Always
/* Display that one when validation is failed */
self.rightView = errorImg;
self.rightViewMode = UITextFieldViewMode.Always
}
}
并在 ViewController 中使用了 UITextField,
@IBOutlet var txtEmail: OvalTextField!
如果该 txtEmail 为空或无效的电子邮件地址,我想显示错误图标消息。
请建议我怎么做。提前致谢。
【问题讨论】:
-
这取决于您何时执行验证;您可以使用文本字段委托将其更新为人员类型,或者您可以在他们保存/提交表单时执行验证
-
我能问一下
clearButtonMode设置在这里可以使用吗?