gpt4 book ai didi

ios - 来自 Afnetworking 的大图像缓存

转载 作者:可可西里 更新时间:2023-11-01 17:07:31 28 4
gpt4 key购买 nike

我正在使用 AFNetworking 从 Internet 下载一些图像到我的应用程序。我正在使用此代码下载这些图像,

AFHTTPRequestOperation *requestOperation = [[AFHTTPRequestOperation alloc] initWithRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:_linkString[indexPath.item]]]];
requestOperation.responseSerializer = [AFImageResponseSerializer serializer];
[requestOperation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
_imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 150, 150)];
_imageView.image = responseObject;

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Image error: %@", error);
}];

[requestOperation start];

我注意到所有响应图像都通过这种方法自动缓存到磁盘。我也想在我的应用程序中使用该选项。所有缓存的图像大小约为 150kb。但是当我下载大约 2MB 大小的图像时,这些图像不会自动缓存到磁盘。

为什么缓存小尺寸图片而不缓存大尺寸图片??我是否使用了错误的方式在 AFNetworking 中缓存图像?

谁能给我一个使用 AFNetworking 缓存 2MB 图像的解决方案....

谢谢

最佳答案

问题不在于 AFNetworking,而在于 NSURLCache。默认情况下,NSURLCache 不会缓存大于缓存大小 10%(不确定确切百分比是多少)的文件。

但是增加缓存大小会有帮助:

[[NSURLCache sharedURLCache] setMemoryCapacity:(20*1024*1024)];
[[NSURLCache sharedURLCache] setDiskCapacity:(200*1024*1024)];

关于ios - 来自 Afnetworking 的大图像缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22319018/

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