gpt4 book ai didi

swift - fatal error : Index out of range when refreshing Collection View

转载 作者:行者123 更新时间:2023-11-28 05:38:07 29 4
gpt4 key购买 nike

我在 UICollectionView 中添加了一个刷新按钮,但我得到了同样的错误,尽管我已经尝试了很多东西。

UICollectionView 工作正常。拉动刷新也工作正常,但如果我反复拉动,我会收到此错误。

fatal error :索引超出范围

该功能在完全完成之前不应该再次运行吗?

我该如何解决这个问题?

    func veriCek(){

var tempOrdersList = [HomeFeedVideo]()

self.posts.removeAll()
tempOrdersList.removeAll()

Alamofire.request("**************************", method: .post, parameters: parameters).validate().responseJSON { response in
switch response.result {
case .success:
//print(response.data!)
if let result = response.result.value {
let json = result as! NSDictionary
//print(json)

let dataArray = json["sonuclar"] as! NSArray;

print("Data items count: \(dataArray.count)")
for item in dataArray { // loop through data items

// ... some code

let post = HomeFeedVideo(artistName: artistName, commentlikes: commentlikes, likeStatus: likeStatus, name: name, profilePics: profilePics, time: time, userID: userID, username: username, videoContent: videoContent, videoID: videoID, videoLikes: videoLikes, videoName: videoName, videoPath: videoPath, view: view, status: groupStatus, groupResponse: groupRes, thumbnail: thumbnail)
tempOrdersList.append(post)

}

DispatchQueue.main.async {
self.posts = tempOrdersList
self.user = User(dictionary: json as! [String : Any])
self.navigationItem.title = self.user?.username
self.playerCollect?.reloadData()
self.refreshControl.endRefreshing()
}
}
case .failure(let error):
print(error)
}
}
}

最佳答案

我认为您在 collectionView 数据源方法中遇到了错误cellForItemAt(indexPath:) 方法。您可能试图在删除数据时设置单元格帖子。如果您分享您的数据源实现,我也许能找到问题所在。仅当您的数据不为空时才尝试设置发布。

在 cellForItemAt 方法中添加此检查:-

if !posts.isEmpty {
// TODO: - Set your cell's post
}

关于swift - fatal error : Index out of range when refreshing Collection View,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57948538/

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