我已经覆盖了一个方法
override func viewDidLayoutSubviews() {
// creating bottom line for textField
let border = CALayer()
let width = CGFloat(1.0)
border.borderColor = UIColor.whiteColor().CGColor
border.frame = CGRect(x: 0, y: emailTextField.frame.size.height - width, width: emailTextField.frame.size.width, height: emailTextField.frame.size.height)
border.borderWidth = width
emailTextField.layer.addSublayer(border)
emailTextField.layer.masksToBounds = true
}
现在发生的事情是,当我在 Iphone 6、6+ 上运行我的应用程序时,一切正常。iphone5
但是,当我在(模拟器 + 真实设备)上运行相同的代码时,viewDidLayoutSubViews
会被无限次调用,并且我的应用程序变得无响应。我通过使用布尔变量解决了这个问题。但我不明白为什么会这样。所以有人可以向我解释一下。
谢谢 :-)