gpt4 book ai didi

objective-c - 如何提高从 url 加载图像的性能

转载 作者:行者123 更新时间:2023-12-04 06:12:06 24 4
gpt4 key购买 nike

我从 url 加载图像并在 imageView 中显示它。我使用 NSBLockOperation 加载图像,它在后台运行,在 imageview 中加载图像需要时间..有没有办法提高性能,以便它需要更少的时间......下面是代码。

NSOperationQueue *queue=[[NSOperationQueue alloc]init];
NSBlockOperation *operation=[NSBlockOperation blockOperationWithBlock:^{

[activityIndicator startAnimating];
NSString *imagefile = [banner1 objectAtIndex:0];
NSURL *url1=[NSURL URLWithString:imagefile];
NSData *data = [NSData dataWithContentsOfURL:url1];
UIImage *ui=[[UIImage alloc]initWithData:data];
bigbanner.image=ui;
[activityIndicator stopAnimating];
bigbanner.alpha=0.0;

}];
[operation setCompletionBlock:^{
[UIView animateWithDuration:3.0 animations:^{bigbanner.alpha=2.0;}
completion:^(BOOL finished){}];
}];

[queue addOperation:operation];

enter image description here

最佳答案

我猜你的限制因素是图像下载。
在 iOS 上加载图像并将其放置在屏幕上的速度非常快。

除了将您的三秒淡入更改为更短的间隔之外,我认为您被卡住了。

您可能会尝试使用 [NSURLRequest] 进行下载,但我怀疑您会注意到主要区别。

我想说你的选择是(按速度排序):

  • 在您的包中缓存或包含图像(不要下载)。
  • 使您的图像更小
  • 提高服务器速度

  • 另外:附注,希望其他路过的人可以回答这个问题......是否从非主线程安全地设置 UIImageView 的图像属性?我的印象是 UI 上发生的一切都应该发生在主线程上。

    关于objective-c - 如何提高从 url 加载图像的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7657175/

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