我想访问我的textfield数组的值但是因为我创建的数组带有标签而感到困惑。 所以任何人都知道如何获得我创建的列表(数组)的值?
我想创建一个函数,其中我: 获取列表中文本字段的值 按标签排序 获取每个文本字段的值 将它们连接成一个字符串
答案 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)
@IBOutlet var textFields: [UITextFields]!
textFields.sort { $0.tag < $1.tag}
var string = ""
for item in textFields {
string += item.text
}