【发布时间】:2020-11-03 14:49:07
【问题描述】:
我创建了一个固定大小的数组来从textfields 收集用户数据。每个textfield 位于不同的单元格中。所以我将所有用户答案收集在一个固定数组中
var userSelectionText = [String](repeating: "", count: 17)
真正奇怪的是,每次我根据单元格的行号在数组中的某个索引中插入一个字符串时,数组大小都会增加+1。
self.userSelectionText.insert(diseaseSelectionArray[row], at: tappedTextFieldTag)
当我在第一次加载视图时打印出数组时,我有 17 个项目
["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]
在固定大小数组的某个索引中添加一个字符串后,我有 17 个项目 + 1
["", "", "No", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]
为什么?我需要修复它们以反映 tableview 中的确切行数
【问题讨论】:
-
Swift 中没有“固定大小的数组”。您创建一个包含 17 个元素的数组。如果插入另一个元素,则它有 18 个元素。
-
正如@MartinR 指出的那样,尚不支持“固定大小的数组”。在上面的代码中,您可以使用下标来替换对象,而不是使用插入函数。
userSelectionText[tappedTextFieldTag] = diseaseSelectionArray[row] -
我建议您阅读 Swift 编程语言书籍中有关 arrays 的内容。
标签: arrays swift uitableview