为程序化的UITextField创建约束条件。

问题描述 投票:-1回答:1

我正在做一个UITextField,基本上是要求输入一个新项目的名称......。我想设置(程序上而不是故事板风格)限制。我遇到了一些问题,因为事实上,一个UITextField在编程上必须有某种框架......。这就是为什么我想知道如何设置限制条件而不与我使用(frame.CGRect(x: float))设置的参数冲突。CGRect(x:floatValue , y:floatValue , width:floatvalue , height:floatValue , ))作为UITextField的参数......floatValues都是实际的float值,如10.0和100.0等,这就是为什么我有麻烦设置约束的东西,已经有一个固定的X和Y,并可以删除,而不会出错的CGRect......如果有人能告诉我在正确的方向,如使用约束作为一个参数,请让我知道!!!。

ios swift xcode
1个回答
1
投票

如果你正在使用约束条件,你不需要设置一个框架。考虑下面的例子。

class ViewController: UIViewController {

let textField = UITextField()

override func viewDidLoad() {
    super.viewDidLoad()
    configureTextField()
}

private func configureTextField() {
    textField.layer.borderWidth = 1 // just to make it more visible on the screen
    textField.translatesAutoresizingMaskIntoConstraints = false
    view.addSubview(textField)

    NSLayoutConstraint.activate([
        textField.centerXAnchor.constraint(equalTo: view.centerXAnchor),
        textField.centerYAnchor.constraint(equalTo: view.centerYAnchor),
        textField.widthAnchor.constraint(equalToConstant: 200)
    ])
}
}
© www.soinside.com 2019 - 2024. All rights reserved.