[英]Programmatically Creating Constraints for a Programmatically made UITextField
我正在研究一個 UITextField,它基本上要求一個新項目的名稱......我想設置(以編程方式不是 storyboard 樣式)約束。 我遇到了問題,因為以編程方式制作的 UITextField 必須有某種框架......這就是為什么我想知道如何設置約束而不與我設置的參數沖突(框架:CGRect(x: floatValue, y: floatValue, width: floatvalue, height: floatValue,)) 作為 UITextField 的參數 ... floatValues 都是實際的浮點值,如 10.0 和 100.0 等,這就是為什么我無法對已經有的東西設置約束一個固定的 X 和 Y 並且可以在不出錯的情況下刪除 CGRect ...如果有人能指出我正確的方向,比如使用約束作為參數,請告訴我!!!
如果您使用約束,則無需設置框架。 考慮以下示例:
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)
])
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.