如何调整UITextField.leftView的大小?

詹姆斯·麦克基

我试图更改调整UIImageView的大小,即UITextField的leftView,但没有成功。图像始终是巨大的。我希望它具有与UITextField相同的高度。这是我尝试过的:

结果:

在此处输入图片说明

let topContainer: UIView = {
    let view = UIView()
    view.layer.borderWidth = 1.0
    view.layer.borderColor = UIColor.appGrayExtraLightGray.cgColor
    view.layer.cornerRadius = 5
    view.clipsToBounds = true
    view.translatesAutoresizingMaskIntoConstraints = false
    return view
}()

let emailField: UITextField = {
    let view = UITextField()
    view.backgroundColor = UIColor.orange
    view.text = "[email protected]"
    view.font = UIFont.systemFont(ofSize: 14)
    view.translatesAutoresizingMaskIntoConstraints = false
    return view
}()

let s = view.safeAreaLayoutGuide

    topContainer.addSubview(emailField)
    emailField.topAnchor.constraint(equalTo: topContainer.topAnchor, constant: spacing).isActive = true
    emailField.leadingAnchor.constraint(equalTo: topContainer.leadingAnchor, constant: spacing).isActive = true
    emailField.trailingAnchor.constraint(equalTo: topContainer.trailingAnchor, constant: -spacing).isActive = true
    emailField.bottomAnchor.constraint(equalTo: topContainer.bottomAnchor, constant: -spacing).isActive = true

    /**Mail and clear button on eitherisde of textField*/
    let mailView = UIImageView.init(frame: CGRect.init(x: 0, y: 0, width: 15, height: 15)) // Chaning the GREct has no effect on the size!!
    mailView.image = UIImage.init(named: "mailGrayFilled")
    emailField.leftView = mailView
    emailField.leftViewMode = .always
    emailField.clearButtonMode = .always

    view.addSubview(topContainer)
    topContainer.topAnchor.constraint(equalTo: s.topAnchor, constant: spacing).isActive = true
    topContainer.leadingAnchor.constraint(equalTo: s.leadingAnchor, constant: spacing).isActive = true
    topContainer.trailingAnchor.constraint(equalTo: s.trailingAnchor, constant: -spacing).isActive = true
瓦尔德温

在测试您的代码时,UIImageView放入容器UIView似乎可以解决此问题。这也可能允许您调整填充以适合您的需求。

let iconContainer = UIView(frame: CGRect(x: 0, y: 0, width: 25, height: 15))
let mailView = UIImageView(frame: CGRect(x: 0, y: 0, width: 15, height: 15))
mailView.image = UIImage(named: "mailGrayFilled")
mailView.contentMode = .scaleAspectFit
iconContainer.addSubview(mailView)
emailField.leftViewMode = .always
emailField.leftView = iconContainer
emailField.clearButtonMode = .always

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何根据使用的iPhone使UITextField适当调整其大小?

来自分类Dev

如何在Swift中根据用户类型调整UITextField的大小

来自分类Dev

如何根据使用的iPhone使UITextField适当调整其大小?

来自分类Dev

如何在Swift中根据用户类型调整UITextField的大小

来自分类Dev

UITextField调整大小问题

来自分类Dev

UITextField的leftView属性存在问题

来自分类Dev

iOS UITextField自动调整大小符合内容

来自分类Dev

设置文本时停止调整UITextField的大小

来自分类Dev

UITextField-以编程方式调整UIView的大小

来自分类Dev

EditText leftView图像适合Android的EditText大小

来自分类Dev

如何调整div的大小

来自分类Dev

如何调整JPanel的大小

来自分类Dev

如何调整QMessageBox的大小?

来自分类Dev

如何调整MTLTexture的大小

来自分类Dev

如何调整画布大小

来自分类Dev

如何调整/分区的大小?

来自分类Dev

如何调整/分区的大小

来自分类Dev

如何设置调整大小

来自分类Dev

如何调整LVM的大小

来自分类Dev

键入时调整UITextField的大小(通过使用自动布局)

来自分类Dev

如何将UITextfield上的leftview位置设置为靠近placehoder文本

来自分类Dev

禁用UITextField时如何在leftView / rightView中启用水龙头?

来自分类Dev

UWP:如何调整图像大小

来自分类Dev

我如何调整jscrollpane的大小

来自分类Dev

如何调整Google RECAPTCHA的大小

来自分类Dev

如何调整GraphWin窗口的大小?

来自分类Dev

如何调整WorldWind Panel的大小?

来自分类Dev

如何调整UIImageView的大小(快速)

来自分类Dev

如何调整JavaFX图片的大小?