我想知道创建与MVC模式兼容的寄存器表格的最佳方法是什么。假设我有一个包含一些文本字段的视图:
和按钮,当用户填充所有TextField时将其发送到控制器。
View符合应将数据从View发送到Controller的协议。通过这种方法,我发送了我认为不是一个好主意的对象。
@objc public func acceptButtonHit(sender: UIButton){
if checkIfTextFieldsConainsCharacters(){
let userData = UserRegisterData()
userData.name = nameTextField.text!
userData.surname = surnameTextField.text!
userData.email = emailTextField.text!
userData.password = passwordTextField.text!
delegate?.logInButtonAction(sender: sender, text: userData)
}
}
我可以将所有数据用作参数,但是当我需要发送更多数据时,这种方法就不好了。
@objc public func acceptButtonHit(sender: UIButton){
if checkIfTextFieldsConainsCharacters(){
let name = nameTextField.text!
let surname = surnameTextField.text!
let email = emailTextField.text!
let password = passwordTextField.text!
delegate?.logInButtonAction(sender: sender, name: name, surname: surname, email: email, password: password)
}
}
我有一个模型让它成为结构体:
struct UserData {
let name:String
let surname: String
let email: String
let password: String
}
控制器初始化View并与服务器连接。
问题是从View向Controller发送数据并更新Model的最佳方法是什么。 我将不胜感激。 谢谢!