【发布时间】:2015-07-20 15:20:44
【问题描述】:
我正在尝试圆两个 UITextField 的顶部和底部边框
ViewDidLoad()中的结果
ViewDidAppear中的结果
问题是ViewDidAppear在加载视图半秒后改变了边框,这在我的情况下不好,
任何人都知道为什么它只在ViewDidLoad 方法中舍入左角?
有什么建议吗?
* 更新 *
viewDidLayoutSubviews 与ViewDidLoad 相同
这是我用来圆角的代码
extension UITextField {
func roundCorners(corners:UIRectCorner, radius: CGFloat) {
let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
let mask = CAShapeLayer()
mask.path = path.CGPath
self.layer.masksToBounds = true
self.layer.mask = mask
}
}
还有
self.FirstTextField.roundCorners(UIRectCorner.TopRight | UIRectCorner.TopLeft, radius: 10.0)
self.SecondTextField.roundCorners(UIRectCorner.BottomLeft | UIRectCorner.BottomRight, radius: 10.0)
【问题讨论】:
-
你是如何设置文本字段的
-
在 StoryBoard 中使用 AutoLayout
-
您是否正确设置了约束?这很可能是问题
-
约束一切正常,我也是这么想的,但我发现问题在于圆角
-
@Aladin 看看更新
标签: ios swift autolayout uitextfield viewdidload