我似乎无法弄清楚如何只用一个var做到这一点?所以我想知道它是否可能做到这一点?或者这是向所有3个UITextfields添加按钮行的唯一方法吗?
var border = CALayer(); var border2 = CALayer(); var border3 = CALayer()
var width = CGFloat(0.7); var width2 = CGFloat(0.7); var width3 = CGFloat(0.7)
border.borderColor = UIColor.whiteColor().CGColor
border2.borderColor = UIColor.whiteColor().CGColor
border3.borderColor = UIColor.whiteColor().CGColor
border.frame = CGRect(x: 0, y: workServer.frame.size.height - width, width: 250, height: workServer.frame.size.height)
border2.frame = CGRect(x: 0, y: workUsername.frame.size.height - width, width: 250, height: workUsername.frame.size.height)
border3.frame = CGRect(x: 0, y: workPassword.frame.size.height - width, width: 250, height: workPassword.frame.size.height)
border.borderWidth = width
border2.borderWidth = width
border3.borderWidth = width
workServer.layer.addSublayer(border)
workServer.layer.masksToBounds = true
workUsername.layer.addSublayer(border2)
workUsername.layer.masksToBounds = true
workPassword.layer.addSublayer(border3)
workPassword.layer.masksToBounds = true
答案 0 :(得分:1)
你可以编写一个同样的函数。
func addBorder (UIView *view)
{
var border = CALayer()
var width = CGFloat(0.7)
border.borderColor = UIColor.whiteColor().CGColor
border.frame = CGRect(x: 0, y: view.frame.size.height - width, width: 250, height: view.frame.size.height)
border.borderWidth = width
view.layer.addSublayer(border)
view.layer.masksToBounds = true;
}
您可以按如下方式调用:
addBorder(workServer)
addBorder(workUsername)
addBorder(workPassword)
答案 1 :(得分:0)
您可以在没有任何var
的情况下执行此操作:
let views = [workServer, workUsername, workPassword]
for view in views {
let border = CALayer()
let width = CGFloat(0.7)
border.borderColor = UIColor.whiteColor().CGColor
border.frame = CGRect(x: 0, y: view.frame.size.height - width, width: 250, height: view.frame.size.height)
border.borderWidth = width
view.layer.addSublayer(border)
}