我有一个像这样的结构..
struct Product {
let name : String
let id : String
}
}
我还有一个名为arrayOfURLImages
的单独图像数组现在我有一个collectionview
,collectionview
的每个单元都有arrayOfURLImages
和2的图像显示id
和rate
的标签。当我点击collectionview
的某个项目时,我会加载一个tableviewcell,其中包含collectionview
的{{1}}图像以及id
和name
。
点击收藏查看时,这就是我传递image
和name
& id
...
func SellBtnTapped(_ sender: UIButton) {
let indexPath = collectionView?.indexPath(for: ((sender.superview?.superview) as! RecipeCollectionViewCell))
self.photoThumbnail = self.arrayOfURLImages[(indexPath?.row)!]
let myVC = storyboard?.instantiateViewController(withIdentifier: “mydentifier") as! myViewController
myVC.myImage = self.photoThumbnail
let productObject = productData1[(indexPath?.row)!]
myVC.prodName = productObject.name <— ‘name’ from struct
myVC.prodId = productObject.id <— ‘id’ from struct
navigationController?.pushViewController(myVC, animated: true)
}
现在我的问题是我想将tableviewcells添加到数组中。同样在加载tableviewcell的viewcontroller中,这就是我在cellForRowAt
中分配数据的方式......
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: sellTableViewCell = tableView.dequeueReusableCell(withIdentifier: "sellProductIdentifier") as! sellTableViewCell
cell.IdLabel.text = prodId
cell.nameLabel.text = prodName
return cell
}
目前,在numberOfRowsInSection
中,我只是给出了返回1,因此只显示了一个单元格,但我想将我的单元格添加到数组中并获取noOfItems
作为计数阵列...
希望有人能帮忙...... :)
修改
我真正想要实现的是,当我点击一个集合视图项时,会显示一个tableviewcell,当我返回并单击第二个集合视图项时,应显示2个tableviewcells,每个都包含来自分别是第一和第二个收集视图单元。
答案 0 :(得分:0)
好像你想将productData1
传递给下一个ViewController
只需在myViewController
var arrProduct: [Product]?
然后传递它:
myVC.arrProduct = productData1
并在arrProduct.count
中返回数组numberOfRowsInSection
的计数。
并在cellForRowAtIndexPath
:
let product = arrProduct[indexPath.row]
cell.IdLabel.text = product.id
cell.nameLabel.text = product.name
修改强>
var selectedItems: [Product]?
func SellBtnTapped(_ sender: UIButton) {
let indexPath = collectionView?.indexPath(for: ((sender.superview?.superview) as! RecipeCollectionViewCell))
self.photoThumbnail = self.arrayOfURLImages[(indexPath?.row)!]
let myVC = storyboard?.instantiateViewController(withIdentifier: “mydentifier") as! myViewController
myVC.myImage = self.photoThumbnail
let productObject = productData1[(indexPath?.row)!]
if selectedItems == nil {
selectedItems = [Product(name:productObject.name, id:productObject.id)]
}else {
selectedItems.append(productObject)
}
myVC.arrProduct = selectedItems
navigationController?.pushViewController(myVC, animated: true)
}
注意:类名应以大写字母和带小写字母的实例成员开头,名称也应该是描述性的。