从多个textField追加到数组?

时间:2019-01-22 20:58:26

标签: arrays swift uitextfield

我有一堆textField,这些内容我想添加到array
我尝试了不同的方法,并且使用了该方法:

@IBAction func addToArrayTapped(_ sender: UIButton) {

        if let fromTextField1 = textField1.text {
            array.append(fromTextField1)
        }
        if let fromTextField2 = textField2.text {
            array.append(fromTextField2)
        }
        if let fromTextField3 = textField3.text {
            array.append(fromTextField3)
        }
        print(array) 
}    

这是将内容从textField添加到array的正确方法吗?感觉有点复杂。

2 个答案:

答案 0 :(得分:2)

你可以

let arr = [textField1,textField2,textField3].map { $0.text! }

您还可以为IB之类的所有文本字段创建插座集合

@IBOutlet weak var allTextF:[UITextField]!

而不是分别钩住每个人

答案 1 :(得分:0)

有一个简单的方法:


    // Here you can use IBOutlet collection or form textFields array programmatically
    let textFields = [textField1, textField2, textField3] 
    let result = textFields.compactMap { $0.text }

没有力量解开。结果类型为[String]。