[英]Base64 Or UIImage.
基于其他问题,一个based64
图像Data
大约比实际字符串大37% 。
因此请考虑这种情况。
API客户端使用Object
Array
响应,
该对象包含许多属性..etc,但重要的是我用ImageString64
的Key
找到的属性,该Key
返回maxWidth
和maxHeight
的图像300x300
。
所需解决方案:
我希望以最快的方式但对内存友好的方式来
decode
这些图像
注意事项:
我知道如何
encode
它们,问题是在哪里以及为什么,甚至有关系吗?
我有的选择: //You can add yours if you have better one
1-在Request
响应callback
2-将这些Objects
及其ImageString64
传递为纯String
,然后在UIViewController
对其进行解码。
有关响应的更多常规信息:
1-作为响应的对象的最大数组限制在6-9之间。
2-每个响应对象,都有17个Keys
。
如果您需要使用base64解码图像,则不会在请求回调或视图控制器中对其进行转换。
您应该具有一种内部存储库,您的视图控制器将从中获取Object
实例。 存储库包含原始数据以及base64字符串。
如果从存储库访问对象实例之一,则应将base64字符串转换为UIImage
实例。 视图控制器应该只看到UIImage
。
为了获得良好的转换和显示数据性能,应在尝试显示它之前进行此转换,但如上所述,仅在需要时才进行转换。
如果要在UITableView
或UICollectionView
显示数据,则应使用预取协议UICollectionViewDataSourcePrefetching
( https://developer.apple.com/documentation/uikit/uicollectionviewdatasourceprefetching/prefetching_collection_view_data )或UITableViewDataSourcePrefetching
( https://developer.apple.com / documentation / uikit / uitableviewdatasourceprefetching )。
您用于显示图像的用例是什么?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.