如何在Swift 3中更改所有TextField边框颜色 我构建了一个iPad应用程序。 我的.xib文件中有很多TextField,现在我想更改边框颜色,但是要编写特定的文本字段这么多行,所以对此有任何排序方式吗?
答案 0 :(得分:5)
添加此扩展程序以为项目中的所有文本字段创建边框。
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
}
}
答案 1 :(得分:3)
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
}}
答案 2 :(得分:2)
你应该创建一个新类,它是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选择所有文本字段。
在身份检查器中,将自定义类更改为YourTextField
这样,即使您在项目中有1000个文本字段,也不需要为此目的再编写一行。