gpt4 book ai didi

swift - Tableview : Name is selected, 将 ID(而不是名称)存储在变量中的最佳方法?

转载 作者:行者123 更新时间:2023-11-30 10:50:00 24 4
gpt4 key购买 nike

我对 swift 和一般编程都很陌生。我有一个带有动态单元格的表格 View ,其中每个单元格显示数组中的名称 ["John","Steve","Matt"]

通过在 didSelectRowAt 中执行 Print(IndexPath.item),我可以看到选择了哪一行

每个名称都有一个 ID 号 (1,2,3),我尚未实现,但我想将所选行的 ID 号存储在变量中 (var idSelected )

最好的方法是什么?

我想我可以做一个大的“if 语句”,但我会有数百个名字,所以这效率不高。我正在考虑以某种方式使用 Struct 来存储所选相应名称的 ID,但需要一些指导

谢谢

最佳答案

您可以按照以下步骤操作:

//1. Create a structure to hold the data
struct Person{
let name : String
let id : String

init(name: String, id: String){
self.name = name
self.id = id
}
}

class ViewController: UIViewController {

@IBOutlet weak var tableView: UITableView!

//2. Create a datasource array
let datasource : [Person] = [Person(name: "Name1", id: "111"),
Person(name: "Name2", id: "222"),
Person(name: "Name3", id: "333"),
Person(name: "Name4", id: "444"),
]

var personIDArray: [String] = []

override func viewDidLoad() {
super.viewDidLoad()
}
}

extension ViewController : UITableViewDelegate{
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath){

//3. Extract the Person's id from Array
let person = datasource[indexPath.row]

//4. Add id to the array
personIDArray.append(person.id)
}
}

关于swift - Tableview : Name is selected, 将 ID(而不是名称)存储在变量中的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54814402/

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