UITextField 边框在左侧和底部不同

UITextField border is different on left and bottom

我有一个像这样的 UITextField:

lazy var mailTextField: UITextField = {
    let textField = UITextField(forAutoLayout: ())
    textField.delegate = self

    let leftImgView = UIImageView(image: UIImage(named: "dd"))
    leftImgView.frame = CGRectMake(0.0, 0.0, leftImgView.image!.size.width + 22.0, leftImgView.image!.size.height);
    leftImgView.contentMode = .Center

    textField.leftView = leftImgView
    textField.leftViewMode = .Always

    textField.layer.borderColor = UIColor.sweet().CGColor
    textField.layer.borderWidth = 1
    textField.layer.masksToBounds = true

    textField.autocorrectionType = .No
    textField.autocapitalizationType = .None
    textField.spellCheckingType = .No

    return textField
}()

这给了我这个结果:

如果你仔细观察,你会发现左边和底部的线比较粗。这怎么可能?我告诉边框需要 1 厚。

有没有一种方法可以在顶部和右侧使用 1 的边框,然后在整个视图中使用?

我认为这是模拟器规模的问题..

通过 window -> scale -> 100% 或使用 +1 将模拟器缩放至 100%。这将解决您的问题。