2016-07-29 70 views
0

我正在寻找一种方法来保存用户在tableview中的两个文本字段中输入的数据。用户必须在tableview中输入人员的名称和高度,并且我想将其保存到自定义数组中。将tableview textfields保存到一个自定义对象数组

struct PersonData { 
    var name: String 
    var height: Int 

    init(name: String, height: Int) { 
     self.name = name   
     self.height = height 
    } 
} 

我找到了,我发现这个Swift: retrieving text from a UITextField in a custom UITableViewCell and putting it in an array但仍然有两个问题。

如何将项目添加到我的自定义数组中?我试试这个:

personData[textField.tag].name = textField.text! 

是不是一个更简单的方法来做到这一点?

谢谢!

回答

0

如果我正确理解你的问题,那么可以找到一个可能的解决方案。

您初始化一个PersonData类型的数组。然后你创建一个PersonData类型的对象。每当你有一些信息时,你将它存储在这个对象中,并将该对象追加到创建的数组中。

let array = [PersonData]() 
    let personDataObject = PersonData() 

    //After you store the values in the object you add the object to you array. 
    personDataObject.name = textField1.text 
    personDataObject.height = textField2.text //You need to convert this to Int. Try personDataObject.height = textField2.text as? Int or personDataObject.height = Int(textField2.text) 

    array.append(personDataObject) 
+0

是的,我认为,但关键是我有充分的用户结束编辑文本框,这样的答案是不可能的我:( –

+0

当用户结束编辑,给一个按钮,上面写着完成或时间来填充数组提交然后清除文本框,他将能够输入新的数据,并重复相同的过程。你能试试吗? –

+0

没想到我会试试这种方式 –

相关问题