更改焦点的文本字段

时间:2019-05-12 21:49:00

标签: ios swift uitextfield

我实现了一个未描绘的UITextField-因此我添加了两个功能,即underlined()underlinedGrey

我工作得很好,但是我希望文本字段在被聚焦后立即最初为textfield.underlinedGrey()

我该如何实现?我已经浏览过网络,发现必须添加一个事件侦听器,但是到目前为止,对我来说没有任何作用。

修改:

textfield.underlined()

1 个答案:

答案 0 :(得分:1)

遵循UITextFieldDelegate然后实施

func textFieldDidBeginEditing(_ textField: UITextField) {
  textField.underlined()
}
func textFieldDidEndEditing(_ textField: UITextField) {
  textField.underlinedGrey()
}

要清除

extension UITextField {
   func clear () {
     self.layer.sublayers?.forEach {
       if $0 is CAGradientLayer || $0.name == "MyLayer" {
          $0.removeFromSuperlayer()
       }
    }
 }

 let border = CALayer()
 border.name = "MyLayer"
 let width = CGFloat(3.0)
 border.borderColor = color