gpt4 book ai didi

ios - 从 api 检索大量数据并在 UICollectionView Swift 中使用它

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

您好,我正在开发一个可检索电影数据的应用程序,但我遇到了一些问题,这是我的代码:

let categories = [MovieCategory(generID: "28", categoryTitle: "Action")
,MovieCategory(generID: "16", categoryTitle: "Animation")
,MovieCategory(generID: "35", categoryTitle: "Comedy"),
MovieCategory(generID: "18", categoryTitle: "Drama"),
MovieCategory(generID: "27", categoryTitle: "Horror"),
MovieCategory(generID: "10752", categoryTitle: "War")]

func parseJson( category: MovieCategory)
{

self.collectionView.reloadData()
var currentCategory = category
let parameters = ["api_key":"8460d476d21be7e26a99234d8ca8de51","sort_by":"false","include_video":"false","with_genres":category.generID]

Alamofire.request(url, method: .get, parameters: parameters).responseJSON { (response) in
if response.result.isSuccess{
let movieJSON = JSON(response.result.value!)

for i in 0..<20{
let title = movieJSON["results"][i]["title"].stringValue
let posterPath = movieJSON["results"][i]["poster_path"].stringValue

let overview = movieJSON["results"][i]["overview"].stringValue
let dateReleased = movieJSON["results"][i]["release_date"].stringValue
let voteAverage = movieJSON["results"][i]["vote_average"].stringValue
if let safeImage = self.createImage(posterPath: posterPath)
{
let movieDetails = MovieDetails(movieTitle: title, poster: safeImage, voteAverage: voteAverage, overview: overview, releaseDate: dateReleased)
currentCategory.categoryMovies.append(movieDetails)
self.actionMovies.append(UIImage(named: "gul")!)
self.collectionView.reloadData()
}

}

}

}
}

我使用两个结构作为数据源,它们是:

struct MovieCategory {
let generID:String
let categoryTitle:String
var categoryMovies:[MovieDetails] = []

}和:

struct MovieDetails{
let movieTitle:String
let poster:UIImage
let voteAverage:String
let overview:String
let releaseDate:String

}但是当我想获取categoryMovies中的数据时,无论我如何在parseJson函数中向其附加数据,结果都是空的,我不知道为什么当调用numberOfItemsInSection方法时它返回类别[section]时它是空的。 categoryMovies.count 并且它没有调用 cellForItemAtIndexpath 方法,这让我认为它是空的。如果您知道解决方案,我非常感谢您的帮助。

谢谢

最佳答案

我发现解决方案只需将结构定义为类,因为它们通过引用传递值,它解决了我的问题

关于ios - 从 api 检索大量数据并在 UICollectionView Swift 中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60045911/

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