gpt4 book ai didi

ios - 使用 AFNetworking SetImageWithURL 显示 UIActivityIndi​​cator

转载 作者:技术小花猫 更新时间:2023-10-29 10:19:08 26 4
gpt4 key购买 nike

我正在使用 AFNetworking 库来设置带有 URL 内容的图像。在下面的示例中,topLeftImage 是 UIImageView 的一个实例。

[topLeftImage setImageWithURL:[NSURL URLWithString:imageURL]];

我想做的是在下载图像时显示 UIActivityIndi​​catorView。但是我不知道在哪里触发事件指示器的启动和停止。以下是我的事件指示器代码。

UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
[topLeftImage addSubview:activityIndicator];
[activityIndicator startAnimating];

如何将上述代码链接到 setImageWithURL 方法,以便事件指示器仅在图片下载时出现?

最佳答案

UIImageView+AFNetworking.h 类提供了一个setImageWithURL 方法,允许您使用成功和失败 block 。一旦请求成功或失败完成,就会执行此 block 。因此,您可以在请求之前开始动画,并在成功和失败 block 中停止。这是示例代码:

NSURL *imageURL = [NSURL URLWithString:@"http://upload.wikimedia.org/wikipedia/commons/thumb/e/ec/Mona_Lisa%2C_by_Leonardo_da_Vinci%2C_from_C2RMF_retouched.jpg/402px-Mona_Lisa%2C_by_Leonardo_da_Vinci%2C_from_C2RMF_retouched.jpg"];
NSURLRequest *imageRequest = [NSURLRequest requestWithURL:imageURL];
[_activityIndicator setHidden:NO];
[_activityIndicator startAnimating];
[_imageView setImageWithURLRequest:imageRequest
placeholderImage:nil
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image)
{
[_activityIndicator setHidden:YES];
[_activityIndicator stopAnimating];
_imageView.image = image;
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error)
{
[_activityIndicator setHidden:YES];
[_activityIndicator stopAnimating];
}];

关于ios - 使用 AFNetworking SetImageWithURL 显示 UIActivityIndi​​cator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14300771/

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