从文本字段数组中获取值

时间:2018-06-01 12:27:26

标签: arrays swift textfield

我想访问我的textfield数组的值但是因为我创建的数组带有标签而感到困惑。 所以任何人都知道如何获得我创建的列表(数组)的值?

我想创建一个函数,其中我: 获取列表中文本字段的值 按标签排序 获取每个文本字段的值 将它们连接成一个字符串

4 个答案:

答案 0 :(得分:0)

创建一个插座连接并将所有文本字段连接到同一个。

插座连接看起来像

@IBOutlet strong var labels: [UILabel]!

然后获取所有文本字段内容并附加相同内容。

var resultString = ""
for item in enumerate(self.labels) {
   resultString = resultString + item.text
}

答案 1 :(得分:0)

假设您有UITextField数组

  let textfield1 = UITextField()
        textfield1.tag = 1
        textfield1.text = "1"

        let textfield2 = UITextField()
        textfield2.tag = 2
        textfield2.text = "2"

        let textfield3 = UITextField()
        textfield3.tag = 3
        textfield3.text = "3"

        let arrayOfTextFields :[UITextField] = [textfield2,textfield1,textfield3]

        let result = self.getInputsValue(arrayOfTextFields, seperatedby: "-")

          print(result)

您想要的方法:

  func getInputsValue(_ inputs:[UITextField], seperatedby value: String) -> String {
        return inputs.sorted {$0.tag <  $1.tag}.map {$0.text}.compactMap({$0}).joined(separator: value)
    }

<强>结果: 1-2-3

答案 2 :(得分:0)

让我们说你有以下数组,

    var txtArray:[UITextField] = [UITextField]()

    for i in 0...4 {
        let txtField = UITextField(frame: .zero)
        txtField.text = "\(i)"
        txtField.tag = i
        txtArray.append(txtField)
    }

要获得您必须执行的值,

    let sorted = txtArray.sorted { $0.tag < $1.tag }
    let values = sorted.map { return $0.text! }
    let test = values.joined(separator: " ")

    print(test)

输出

0 1 2 3 4

答案 3 :(得分:0)

1.您的收藏插座将是这样的

    @IBOutlet var textFields: [UITextFields]!

2。按标签

排序
    textFields.sort { $0.tag < $1.tag}

3。使用for循环从数组中获取值并将其连接

    var string = ""

    for item in textFields {
      string += item.text
    }