【发布时间】:2021-11-28 06:40:35
【问题描述】:
我的结构有两个属性,一个是carName,它的类型是字符串,另一个是carModel,它是一个字符串数组,我创建了CollectionView 的CollectionView,然后单击特定的CollectionView 单元格,主视图控制器(即CollectionView)转到另一个TableView,在该视图中我想设置carModel 的标签。这里有图片以便更好地理解:CollectionView -> TableView
从最后一张图片你可以看到我的代码不起作用。预期结果:image3。我尝试了循环、开关和大小写,但似乎不起作用。有什么解决办法吗?
struct Cars {
let carName:String
let carModel:[String]
}
let cars = [
Cars(carName: "Mercedes", carModel: ["S Class","A Class", "B Class"]),
Cars(carName: "BMW", carModel: ["X5","X6","X7"]),
Cars(carName: "Ford", carModel: ["Fuison","Focus","Mustang"]),
Cars(carName: "Toyota", carModel: ["Camry", "Corolla"]),
Cars(carName: "Hyundai", carModel: ["Elantra"])
]
///TableViewCell code
@IBOutlet var lbl: UILabel!
func configure(with cars:Cars){
for i in 0..<cars.carModel{
lbl.text = cars.carModel[i] // Error is here
}
}
extension ViewController:UICollectionViewDelegate,UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let vc = storyboard?.instantiateViewController(identifier: "TableViewController") as? TableViewController
self.navigationController?.pushViewController(vc!, animated: true)
a = indexPath.row
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell:TableViewCell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TableViewCell
print(indexPath.row)
cell.configure(with: cars[a])
return cell
}
}
【问题讨论】:
标签: ios swift uitableview uikit