gpt4 book ai didi

ios - 如何访问和保存 Collection View 中各个单元格的数据?

转载 作者:行者123 更新时间:2023-11-30 11:02:31 25 4
gpt4 key购买 nike

我正在为投票应用程序构建原型(prototype)。到目前为止,我有一个 Collection View ,其中每个单元格都包含一个人的姓名、描述和一个用于在一个 View Controller 上选择值的 slider 。在下一个 View Controller 上,我有一个包含 3 个单元格的 Collection View ,这些单元格应该从上一个屏幕填充。

我正在尝试使用 UserDefaults 保存前 3 个人(或单元格),以便我可以在第二个 View Controller 上显示它们。这是我现在拥有的代码:

@objc func sliderDidEndSliding(sender: UISlider) {
var defaults = UserDefaults.standard
array.append("\(nameLabel.text)")
defaults.set(array, forKey: "SavedStringArray")

let myarray = defaults.stringArray(forKey: "SavedStringArray") ?? [String]()
print(myarray)
}

我不太清楚如何做我想做的事情。目前,代码仅显示所有三个单元格中最后更改的 slider 的名称。这显然是不正确的,每个单元格应该显示三个不同的名字,而不是每个单元格中的同一个人。我的问题是,我将如何保存 View Controller 中三个不同单元格的信息?

最佳答案

你的做法是错误的。您不应使用 Collection View / TableView 单元格来存储数据。曾经。

您应该使用单元格及其内部的 View 向用户显示信息,并收集用户的输入。当用户更改值(在文本字段中按回车键输入数据、点击按钮、更改 slider 值等)时,您应该收集更改的值并将其保存到数据模型中。对于 Collection View 和 TableView ,数据模型通常只需要一个数组或数组的数组。您定义一个描述单元格不同值的结构体,然后创建这些结构体的数组(对于简单的线性集合/ TableView )或数组的数组(对于 Collection View 单元格的网格模式,或者对于分段 TableView ) .)

如果您需要将数据传递给另一个 View Controller ,则只需传递数据模型对象即可。如果您需要保留数据,则保留数据模型对象(请注意,对于保存数据模型,UserDefaults 是一个糟糕的选择。它的目的是保存简单的设置,例如用户首选项,而不是大型或复杂的结构。)

关于ios - 如何访问和保存 Collection View 中各个单元格的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53162894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com