我目前正在尝试使用UITextfields(我是初学者)。 现在我已经设置了我的应用程序的背景颜色并设置了边框半径,但这是我在这样做时遇到的一个小问题。
我的代码:
superView.backgroundColor = backgroundColorrr
loginView.backgroundColor = backgroundColorrr
loginLabel.textColor = UIColor.white
loginLabel.text = "Login"
loginButton.layer.cornerRadius = 5
loginButton.layer.borderWidth = 2.0
loginButton.imageView?.contentMode = UIViewContentMode.scaleToFill
loginButton.layer.borderColor = UIColor.lightGray.cgColor
loginButton.layer.backgroundColor = backgroundColorrr.cgColor
loginButton.titleLabel?.textColor = UIColor.white
loginButton.titleLabel?.text = "Login"
userNameTextField.layer.cornerRadius = 15.0
userNameTextField.layer.backgroundColor = backgroundColorrr.cgColor
userNameTextField.layer.borderWidth = 0.5
我的结果:
你看到我想要实现的是与屏幕的其他部分具有相同的背景颜色(我不希望文本字段的边框旁边有白色。同样如此使用我的按钮,边框半径根本不会改变(使用的图像尺寸与我按钮的大小相同。
欢迎任何帮助!
答案 0 :(得分:8)
如果您要应用layer.masksToBounds = true
,需要设置cornerRadius
。
设置
userNameTextField.layer.masksToBounds = true
和loginButton.layer.masksToBounds = true
您的完整代码应如下所示:
superView.backgroundColor = backgroundColorrr
loginView.backgroundColor = backgroundColorrr
loginLabel.textColor = UIColor.white
loginLabel.text = "Login"
loginButton.layer.masksToBounds = true
loginButton.layer.cornerRadius = 5
loginButton.layer.borderWidth = 2.0
loginButton.imageView?.contentMode = UIViewContentMode.scaleToFill
loginButton.layer.borderColor = UIColor.lightGray.cgColor
loginButton.layer.backgroundColor = backgroundColorrr.cgColor
loginButton.titleLabel?.textColor = UIColor.white
loginButton.titleLabel?.text = "Login"
userNameTextField.layer.masksToBounds = true
userNameTextField.layer.cornerRadius = 15.0
userNameTextField.layer.backgroundColor = backgroundColorrr.cgColor
userNameTextField.layer.borderWidth = 0.5
注意:如果您应用cornerRadius
,则可以在clipsToBounds = true
上获得相同的结果。