【发布时间】:2017-06-19 00:57:34
【问题描述】:
我想为我的 UItextfield 创建一个动画。为此,我创建了一个 UITextField 的子类并将我的代码存储在那里:
import Foundation
import UIKit
class textfieldEdit: UITextField, UITextFieldDelegate {
let border = CALayer()
let width = CGFloat(2.0)
required init?(coder aDecoder: (NSCoder!)) {
super.init(coder: aDecoder)
self.delegate=self;
border.borderColor = UIColor( red: 216/255, green: 216/255, blue: 216/255, alpha: 100 ).cgColor
border.frame = CGRect(x: 0, y: self.frame.size.height - width, width: self.frame.size.width, height: self.frame.size.height)
border.borderWidth = width
self.layer.addSublayer(border)
self.layer.masksToBounds = true
}
override func draw(_ rect: CGRect) {
border.frame = CGRect(x: 0, y: self.frame.size.height - width, width: self.frame.size.width, height: self.frame.size.height)
}
override func awakeFromNib() {
super.awakeFromNib()
border.frame = CGRect(x: 0, y: self.frame.size.height - width, width: self.frame.size.width, height: self.frame.size.height)
}
}
但是,当有人在文本字段内单击时,我想更新文本字段的边框并使其变为绿色。有没有一种有效的方法来做到这一点?每当有人触摸我的主视图控制器中的文本框内部时,我都尝试为其分配一个功能,但它似乎不起作用。
【问题讨论】: