【问题标题】:How to draw a line under uiTextField inside uiTableViewCell?如何在uiTableViewCell内的uiTextField下画一条线?
【发布时间】:2016-09-23 19:54:26
【问题描述】:

我正在尝试创建只有底部边框的文本字段。该字段放置在动态单元格内并使用情节提要创建。边框样式设置为无。自动布局已打开。这条线在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
    }

}

【问题讨论】:

    标签: ios swift uitableview uitextfield core-graphics


    【解决方案1】:

    您可以从 Interface Builder 执行此操作。创建具有固定高度 = 1 的 UIView 并提供一些颜色(黑色),确保与文本字段的宽度相等,然后将没有边框的 UITextField 连接到该视图。所以垂直空间文本字段和视图之间的约束 = 0

    【讨论】:

      猜你喜欢
      • 2019-11-27
      • 2020-02-17
      • 2020-05-11
      • 2011-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多