在CellForRowAt / CellForItemAt外部更新单元格

问题描述

我正在UICollectionView内创建一个UITableViewCell。在必须从API获取数据之前,布局设置非常好。我必须同时更新我的​​TableViewCell数据和CollectionViewCell数据。

这是我执行更新方法的方式:

func updateUI() {
        guard vietLottResult.resultModel.count > 0 else {return}
        dispatchQueue.main.async {
            let tableIndexPath = IndexPath(row: 0,section: 0)
            let tableCell = self.tableView.cellForRow(at: tableIndexPath) as! TableViewCell
            
            let date = self.vietLottResult.resultModel[tableIndexPath.row].date
            let dateString = Date(timeIntervalSince1970: Double(date))
            DateFormatter().dateStyle = .short
            DateFormatter().timeStyle = .none
            let localDate = DateFormatter().string(from: dateString)
            tableCell.leftLabel.text = localDate
            
            let colIndexPath = IndexPath.init(item: 0,section: 0)
            let collectionView = tableCell.collectionView
            let colCell = collectionView.cellForItem(at: colIndexPath) as! CollectionViewCell
            colCell.number.text = String(self.vietLottResult.resultModel[collectionView.tag].result[colIndexPath.item])
        }
        
    }

不幸的是,UI仅更新第一个单元格标签TableViewCellCollectionViewCell)。我知道IndexPath设置肯定有问题,但是根据我对所有类似主题搜索,我找不到其他答案。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)