gpt4 book ai didi

swift - 编辑后想更新数据

转载 作者:行者123 更新时间:2023-11-28 15:01:48 25 4
gpt4 key购买 nike

我想在编辑后更新数据。为此,我需要以前的数据。但在我的例子中,在编辑后,保存先前值的变量被当前值替换。我怎样才能保持以前的值(value)??

 if itemToEdit == nil{
item = TestDataModel()

else{
item = itemToEdit
selectedItemToEdit = itemToEdit
// print(selectedItemToEdit?.title)
print(item.title)
// print(itemToEdit?.title)
}

if let title = titleField.text {
item.title = title
print(item.title)
}
// print(selectedItemToEdit.title!)
print(itemToEdit?.title!)

if let price = pricefield.text {
item.price = (price as NSString).doubleValue
print(item.price)
}

if let details = detailsField.text {
item.details = details
print(item.details)
}

itemToEdit,是我要编辑/更新的项目。这就是我将它存储在 selectedItemToEdit 中的原因。在项目中,我已经存储了编辑后的数据。我需要我在文本字段中输入的先前值和当前值。我怎样才能得到那个。请任何人帮助....

最佳答案

当您尝试保存以前的信息时,您所做的只是创建一个指向同一对象的新变量。当对象发生变化时,无论您使用什么变量来检查它,您都会看到那个对象的变化。

这是一个 playground 示例,可以让您了解拥有两个对象与拥有指向同一对象的两个指针之间的区别。

class MyData {
var title = "Default"

init() {
}

init(source: MyData)
{
title = source.title
}
}

var d1 = MyData()
var d2 = d1
var d3 = MyData(source: d1)
d1.title = "changed"

print(d2.title)
print(d3.title)

关于swift - 编辑后想更新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48833843/

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