Ios 以编程方式添加UITextFields
如何以编程方式将Ios 以编程方式添加UITextFields,ios,swift,Ios,Swift,如何以编程方式将UITextFields添加到swift 例如,在第一页,用户被问及机器的数量。用户按下按钮后,我想创建与页面中输入的机器编号相同的编辑文本。要在视图中以友好方式创建对象,您应该这样做 let textField = UITextField(frame: CGRect(x: 0, y: 0, width: 45, height: 40)) self.view.addSubview(textField) 但我认为在您的情况下,您应该使用您输入的机器编号更改x和y位置,这样您就可以
UITextFields
添加到swift
例如,在第一页,用户被问及机器的数量。用户按下按钮后,我想创建与页面中输入的机器编号相同的编辑文本。要在视图中以友好方式创建对象,您应该这样做
let textField = UITextField(frame: CGRect(x: 0, y: 0, width: 45, height: 40))
self.view.addSubview(textField)
但我认为在您的情况下,您应该使用您输入的机器编号更改x和y位置,这样您就可以创建多个文本字段
这样做的一个好方法是使用UIStackView
let stackView = UIStackView(frame: CGRect(x: 0, y: 0, width: 50, height: 40))
stackView.translatesAutoresizingMaskIntoConstraints = false
stackView.distribution = .fill
stackView.spacing = 10
stackView.axis = .vertical
for i in 0...machine number {
let textField = UITextField()
stackView.addArrangedSubview(textField)
}
self.view.addSubview(stackView)
这是一个相当粗糙的方法。向故事板和插座添加一个视图
@IBOutlet weak var stackView: UIStackView!
private var listOfUITextFields: UITextFields = []
@objc func confirmNumberOfTextFieldsButtonPressed(_ sender: Any) {
let numberOfTextFields = 5 // get this number from the source
for _ in 0...numberOfTextFields {
let newTextField = UITextField()
// customise textfield
listOfUITextFields.append(newTextField) // can use this as a reference later
stackView.addArrangedSubview(newTextField)
}
}
你是说UITextField对吗?