gpt4 book ai didi

ios - 如何从使用结构创建的数组中追加一个项目?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:28:45 25 4
gpt4 key购买 nike

我在 ios 中有一个表,我希望将一个数组中的选定项附加到另一个数组,但是当我尝试时出现错误 Cannot subscript a value of type '[VintageThings]' with an index类型为“IndexPath”

这是给我错误的代码,我尝试查找如何执行此操作,但所有答案似乎都与单层数组有关,例如 array = ["dog","cat"] 等。请帮我解决这个问题。

var selected: [VintageThings] = []

func tableView(tableView: UITableView, didSelectRowAt IndexPath: IndexPath) {
selected.append(newArray[indexPath])
}

编辑

如何获取 selected 数组以锁定来自多个场景的项目并在以后的场景中可用?我是否必须在外部 swift 文件中设置数组?我不知道项目是否正在保存到它。

最佳答案

IndexPath 由两个索引组成。你想要的是 indexPath.row。那是因为 TableView 也可以分成几个部分。如果用户点击给定部分中的某个项目,您会想知道是哪一个。这就是 IndexPath 有第二个索引 indexPath.section 的原因。

要再次从数组中删除它,您必须使用相同的方法(一种切换行为)

let element = newArray[indexPath.row];
if selected.contains(element) {
selected = selected.filter {$0 = element}
} else {
selected.append(element)
}

关于ios - 如何从使用结构创建的数组中追加一个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51319679/

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