ios - 我想从 API 端点下载图像并将其存储在结构变量 iOS 中
问题描述
我正在使用电影数据库搜索电影。
1)我根据搜索参数下载电影
2)出列单元格时,我下载了相应的海报
我的问题是我想将图像存储在结构的对象中,以便我可以在我的应用程序中重新使用它
let cell = tableView.dequeueReusableCell(withIdentifier: "searchResult", for: indexPath) as! SearchCell
var currentMedia = AppModel.searchList[indexPath.section]
searchList 保存媒体模型类型的数据
if let posterPath = currentMedia.posterPath {
TMDBClient.downloadPosterImage(path: posterPath) { data, error in
guard let data = data else {
return
}
let image = UIImage(data: data)
cell.MediaPoster.image = image
currentMedia.posterImage = image
}
}
我的问题是即使在我执行currentMedia.posterImage = image
UIImage 之后也不存储在结构中。
这是 MediaModel 的结构
struct MediaModel {
var posterImage: UIImage?
let posterPath: String?
let overview: String
let releaseDate: String
let Title: String
let language: String
let voteAverage: Double
init(posterImage:UIImage,posterpath: String ,overview:String,release:String,title:String,language:String,vote:Double) {
self.posterImage = posterImage
self.posterPath = posterpath
self.language = language
self.overview = overview
self.releaseDate = release
self.Title = title
self.voteAverage = vote
}
}
解决方案
推荐阅读
- c++ - 现代Cmake找不到Eigen库依赖
- javascript - 单击时滚动到 Kendo Grid 行 - 出现意外的 JavaScript 错误
- c++ - TZ 时间的 C++ 结构,但没有日期?
- javascript - Requirejs 和 polyfill.io mishmash
- mysql - 使用 socket.io 连接到带有套接字的 mysql 数据库时出错
- javascript - 如何在 d3.js 中制作分组压缩圆图?
- python - 除非必要,否则如何避免使用 conda-forge 包?
- javascript - 使用 CSS 规则设置所有元素的背景颜色,除了那些部分透明的元素
- php - 检查对象中的任何属性是否为空
- docker - Kubernetes Nginx 端口 80 在公共 IP 地址上不可用(仅私有地址)