如何在Swift 3中更改所有TextField边框颜色?我已经构建了一个iPad应用程序,在.xib文件中包含许多TextField,现在我想更改边框颜色,但似乎要写入一个特定的文本字段需要很多行
odopli941#
添加这个扩展来为项目中的所有文本域创建边框。
extension UITextField { open override func draw(_ rect: CGRect) { self.layer.cornerRadius = 3.0 self.layer.borderWidth = 1.0 self.layer.borderColor = UIColor.lightGray.cgColor self.layer.masksToBounds = true } }
6gpjuf902#
extension UITextField { func cornerRadius(value: CGFloat) { self.layer.cornerRadius = value self.layer.borderWidth = 1.0 self.layer.borderColor = UIColor.lightGray.cgColor self.layer.masksToBounds = true }}
cygmwpex3#
您应该创建一个作为UITextField子类的新类,如下所示:
import UIKit class YourTextField: UITextField { required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder)! self.setBorderColor() } required override init(frame: CGRect) { super.init(frame: frame) self.setBorderColor() } func setBorderColor(){ self.layer.borderColor = .red // color you want self.layer.borderWidth = 3 // code which is common for all text fields } }
现在打开xib select all text fields.在identity inspector中,将自定义类更改为YourTextField这样,即使您的项目中有1000个文本字段,也不需要为此多写一行。
YourTextField
3条答案
按热度按时间odopli941#
添加这个扩展来为项目中的所有文本域创建边框。
6gpjuf902#
cygmwpex3#
您应该创建一个作为UITextField子类的新类,如下所示:
现在打开xib select all text fields.在identity inspector中,将自定义类更改为
YourTextField
这样,即使您的项目中有1000个文本字段,也不需要为此多写一行。