如何在 TableView 中显示对象数组 - swift
How to show array of objects in TableView - swift
你好,你能帮我吗?我想在 TableView 中显示一个对象数组,但只显示数组的一个组成部分。
这里是我的代码:
extension ViewController: UITableViewDataSource {
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as UITableViewCell
let index = indexPath.row as Int
for dep in autoCompleteDestino {
DestinoInstancia.idDestino = dep.idDestino!
DestinoInstancia.desDestino = dep.desDestino!
autoCompleteDestino.append(dep)
}
print(autoCompleteDestino)
cell.textLabel?.text = String(describing: autoCompleteDestino[index])
return cell
}
}
所以..我想在这一行中显示,只有 DestinoInstancia.desDestino = dep.desDestino!
cell.textLabel?.text = String(describing: autoCompleteDestino[index])
目前是这样显示的:
MTiOS.Destinos(idDestino: Optional(1), desDestino: Optional("Asunción")), MTiOS.Destinos(idDestino: Optional(2), desDestino: Optional("Miami")), MTiOS.Destinos(idDestino: Optional(3), desDestino: Optional("Atenas")), MTiOS.Destinos(idDestino: Optional(5), desDestino: Optional("Madrid"))]
当我只想给我看的时候:
Asunción
Miami
Atenas
Madrid
请帮忙!
我认为问题在于字符串转换和展开的可选值。
尝试替换这个:
cell.textLabel?.text = String(describing: autoCompleteDestino[index])
有了这个:
if let str = autoCompleteDestino[index].desDestino {
cell.textLabel?.text = str
}
此替换安全地解开可选字符串,同时还检索正确的字符串。
你好,你能帮我吗?我想在 TableView 中显示一个对象数组,但只显示数组的一个组成部分。
这里是我的代码:
extension ViewController: UITableViewDataSource {
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as UITableViewCell
let index = indexPath.row as Int
for dep in autoCompleteDestino {
DestinoInstancia.idDestino = dep.idDestino!
DestinoInstancia.desDestino = dep.desDestino!
autoCompleteDestino.append(dep)
}
print(autoCompleteDestino)
cell.textLabel?.text = String(describing: autoCompleteDestino[index])
return cell
}
}
所以..我想在这一行中显示,只有 DestinoInstancia.desDestino = dep.desDestino!
cell.textLabel?.text = String(describing: autoCompleteDestino[index])
目前是这样显示的:
MTiOS.Destinos(idDestino: Optional(1), desDestino: Optional("Asunción")), MTiOS.Destinos(idDestino: Optional(2), desDestino: Optional("Miami")), MTiOS.Destinos(idDestino: Optional(3), desDestino: Optional("Atenas")), MTiOS.Destinos(idDestino: Optional(5), desDestino: Optional("Madrid"))]
当我只想给我看的时候:
Asunción Miami Atenas Madrid
请帮忙!
我认为问题在于字符串转换和展开的可选值。
尝试替换这个:
cell.textLabel?.text = String(describing: autoCompleteDestino[index])
有了这个:
if let str = autoCompleteDestino[index].desDestino {
cell.textLabel?.text = str
}
此替换安全地解开可选字符串,同时还检索正确的字符串。