我在视图上有几个UITextFields必须看起来相同。我发现我可以创建一个扩展,它将预先设置我的文本字段(我希望具有相同样式的字段)的样式。
let passTextField: UITextField = {
let tf = UITextField()
//tf.backgroundColor = UIColor.blueColor()
tf.translatesAutoresizingMaskIntoConstraints = false
tf.layer.cornerRadius = 25
tf.layer.borderColor = UIColor(r: 34, g: 140, b: 204, a: 1).CGColor
tf.layer.borderWidth = 2.0
tf.layer.masksToBounds = true
/* Paddings */
tf.leftView = UIView(frame: CGRectMake(0, 0, 25, 0))
tf.leftViewMode = UITextFieldViewMode.Always
tf.rightView = UIView(frame: CGRectMake(0, 0, 25, 0))
tf.rightViewMode = UITextFieldViewMode.Always
/* Place Holder Formating */
let attributes = [
NSForegroundColorAttributeName: UIColor(r: 34, g: 140, b: 204, a: 1),
NSFontAttributeName : UIFont(name: "HelveticaNeue-Thin", size: 16)! // Note the !
]
tf.attributedPlaceholder = NSAttributedString(string: "Email", attributes:attributes)
return tf
}()
因此这些属性中的大多数都应该包含在扩展中,我希望在声明变量时能够添加几个属性。
你能帮我吗?我一直在寻找如何创建一个扩展,但似乎没有为我工作。
谢谢你,谢谢你
3条答案
按热度按时间lndjwyie1#
像这样创建
UITextField
的extension
像这样调用这个函数
bzzcjhmw2#
你可以用
extension
定义来实现,如果方法是新的,你可以使用下面的代码,如果已经存在,生成一个override
方法rsl1atfo3#
Swift 4:使用UITextField****扩展名在UITextField上**@IBOutlet**