如何在uiTableViewCell 内的uiTextField 下画一条线?
How to draw a line under uiTextField inside uiTableViewCell?
我正在尝试创建只有底部边框的文本字段。该字段放置在动态单元格内,并使用故事板创建。边框样式设置为 None。自动布局已打开。该线是在 layoutSubviews()
中绘制的。但是,该行不会出现。你能帮我修一下吗?提前致谢!
代码如下:
extension UITextField {
func drawUnderline() {
let underline = CALayer()
let underlineWidth = CGFloat(1.0)
underline.borderColor = UIColor.black.cgColor
underline.frame = CGRect(x: 0, y: self.frame.size.height - underlineWidth, width: self.frame.size.width, height: self.frame.size.height)
underline.borderWidth = underlineWidth
self.layer.addSublayer(underline)
self.layer.masksToBounds = true
}
}
class TextFieldTableViewCell: UITableViewCell {
@IBOutlet weak var editTextField: UITextField!
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
override func layoutSubviews() {
super.layoutSubviews()
self.editTextField.drawUnderline() // The line is drawn here
}
}
您可以从界面 Builder.Create UIView 中执行此操作,固定高度 = 1 并提供一些颜色(黑色),确保与文本字段的宽度相等,只需连接没有边框的 UITextField view.So 文本字段和视图之间的垂直 space 约束 = 0
我正在尝试创建只有底部边框的文本字段。该字段放置在动态单元格内,并使用故事板创建。边框样式设置为 None。自动布局已打开。该线是在 layoutSubviews()
中绘制的。但是,该行不会出现。你能帮我修一下吗?提前致谢!
代码如下:
extension UITextField {
func drawUnderline() {
let underline = CALayer()
let underlineWidth = CGFloat(1.0)
underline.borderColor = UIColor.black.cgColor
underline.frame = CGRect(x: 0, y: self.frame.size.height - underlineWidth, width: self.frame.size.width, height: self.frame.size.height)
underline.borderWidth = underlineWidth
self.layer.addSublayer(underline)
self.layer.masksToBounds = true
}
}
class TextFieldTableViewCell: UITableViewCell {
@IBOutlet weak var editTextField: UITextField!
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
override func layoutSubviews() {
super.layoutSubviews()
self.editTextField.drawUnderline() // The line is drawn here
}
}
您可以从界面 Builder.Create UIView 中执行此操作,固定高度 = 1 并提供一些颜色(黑色),确保与文本字段的宽度相等,只需连接没有边框的 UITextField view.So 文本字段和视图之间的垂直 space 约束 = 0