gpt4 book ai didi

ios - 显示大图像文件时在 viewDidAppear 之后调用 DidRecieveMemoryWarning

转载 作者:行者123 更新时间:2023-11-28 20:00:33 25 4
gpt4 key购买 nike

当我加载特定页面时,我的应用程序由于内存压力而终止。我正在使用 NSURLRequest 获取数据并加载图像。我在我的代码中放置了断点,并在 viewDidAppear 之后跟踪第一个 didRecieveMemoryWarning 调用。这是我用来加载图像的代码:

NSError *error = nil;
NSURLResponse *response = nil;
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:self.img]];
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
UIImage *img = [[UIImage alloc] initWithData:data];
self.ImgView.image = img;
[self.scrollView addSubview:self.ImgView];

关于我收集的数据的一些事实:

  1. 在线图片为 5,184px × 3,456px(缩放为 1,008px × 672px)
  2. 我将图像放入 320 x 320 的 UIImageView
  3. NSData对象数据为5,360,785字节

如何解决这个问题?是应用程序无法处理数据,还是 imageView 无法缩放图像?图像出现在屏幕上,但应用程序在屏幕加载后有点崩溃,无论您是停留在该页面还是离开该页面。

最佳答案

尝试在 View 加载后加载图像,然后再分配给 imageview 将图像缩小一点。这样可以避免内存警告。

引用:NSData to UIImage

调整图像大小: How to scale down a UIImage and make it crispy / sharp at the same time instead of blurry?

关于ios - 显示大图像文件时在 viewDidAppear 之后调用 DidRecieveMemoryWarning,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24338414/

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