gpt4 book ai didi

ios - Swift - 当我尝试通过 cellForItem 访问项目时,我的项目为零

转载 作者:行者123 更新时间:2023-11-29 05:57:32 25 4
gpt4 key购买 nike

如果我尝试通过 cellForItem 获取我的项目,我的 UICollectionViewItem 中将得到 nil。但数据显示在我的 UICollectionView 中。我正在通过远程在我的 UICollectionView 中显示数据。当我尝试通过 item 访问数据时,在 reloadData 之后。它返回零。

这是从远程获取数据并重新加载 Collection View 的代码。

    URLSession.shared.dataTask(with: url!) { (data, response, err) in
guard let data = data else { return }

do {

let songs = try JSONDecoder().decode(yt.self, from: data)
for sng in songs.items {
if(sng.id.videoId==nil){
self.video_arr.append("xVrNFaeMvP8")

self.images.append("https://i.ytimg.com/vi/sGIm0-dQd8M/default.jpg")
}else{
self.video_arr.append(sng.id.videoId)
self.images.append(sng.snippet.thumbnails.medium.url)
}
self.channelTitle.append(sng.snippet.channelTitle)
self.titlesArr.append(sng.snippet.title!)

}
DispatchQueue.main.async() {
self.collectionView.reloadData()
self.isAddedToFavourites()
}

SVProgressHUD.dismiss()

} catch let jsonErr {
print("Error serializing json:", jsonErr)
}

}.resume()

这是我获取项目的代码。

func isAddedToFavourites(){
for i in 0..<collectionView.numberOfItems(inSection: 0) - 1{
let indexPath = IndexPath(row: i, section: 0)
let item = collectionView.cellForItem(at: indexPath) as! PlayerCollectionViewCell
//This is returning nil
print(item.musicTitle.text!)
}

我的代码有什么问题吗?

最佳答案

cellForItem(at:) The cell object at the corresponding index path or nil if the cell is not visible or indexPath is out of range.

您应该使用数据模型 titlesArr 来访问数据。

引用UICollectionview cellForItem return nil

关于ios - Swift - 当我尝试通过 cellForItem 访问项目时,我的项目为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54995900/

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