gpt4 book ai didi

swift - 将 gif 存储在核心数据中 - Swift 3

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

如何将从 HTTP 请求获取的 GIF 图像存储在 Core Data 中?我已经使用 UIImagePNGRepresentation 将静态图像存储为二进制数据属性中的 NSData,但我如何继续处理 gif?

编辑:到目前为止,我所做的是从请求中获取数据,然后使用 UIImagePNGRepresentation 将其存储在 BinaryData 中。但是,当我尝试使用 SwiftyGif 创建 UIImage 时,会显示一条错误消息,指出无法确定 GIF 的延迟时间。所以我猜 PNG 表示与 GIF 的框架困惑。我还尝试直接存储来自http请求的数据,但随后 UIView 向我抛出此错误:由于未捕获的异常“CALayerInvalidGeometry”而终止应用程序,原因:“CALayer位置包含NaN

最佳答案

gif是一种文件格式,文件就是数据,数据可以存储在核心数据中。尽管如此,在任何数据库中存储大量二进制数据都是一种不好的做法,文件系统通常是更好的选择。我建议将文件存储在文件系统中,并在数据库中保留相对文件路径(确保它是相对的,因为应用程序的容器目录可以更改)。如果这些是从服务器检索并且可以重新获取的图像,则它们应该存储在 tmp 目录中(或者应该使用 SDWebImage 之类的东西单独管理)。如果以后无法检索它们,则应将它们存储在文档目录中。

如果这看起来很难,那么您仍然可以将它们存储在核心数据中。 Core-data 确实有一个选项允许它将属性存储为数据库文件外部的文件(“允许外部存储”)。

关于swift - 将 gif 存储在核心数据中 - Swift 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44230331/

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