gpt4 book ai didi

ios - AFNetworing - setImageWithURLRequest 不工作

转载 作者:可可西里 更新时间:2023-11-01 04:05:26 25 4
gpt4 key购买 nike

我想在我的一个应用程序中设置表格 View 单元格图像。我使用 AFNetworking (1.2.1) 并使用 setImageWithURLRequest 实现。

我设置图像的代码如下所示:

    if (user.avatar) {
NSString *imageUrl = user.avatar.url;

[cell.profileImage setImageWithURLRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:imageUrl]] placeholderImage:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
[cell setNeedsLayout];
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
NSLog(@"Error: %@", error);
}];
}

我的错误日志返回这个:

Error: Error Domain=NSURLErrorDomain Code=-999 "The operation couldn’t be completed.   (NSURLErrorDomain error -999.)" UserInfo=0x1f5b56a0  {NSErrorFailingURLKey=https://d2rfichhc2fb9n.cloudfront.net/image/5/Cf7T_BA6- NFGL5ah0w4hdvmk_Vp7InMiOiJzMyIsImIiOiJhZG4tdXNlci1hc3NldHMiLCJrIjoiYXNzZXRzL3VzZXIvZTIvM2MvMjA vZTIzYzIwMDAwMDAwMDAwMC5qcGciLCJvIjoiIn0}

图像没有设置好。在我更新到 AFNetworking (1.2.1) 之前,我没有遇到这个问题。有任何想法吗?

更新

尝试像这样从 url 中去除空格:

NSString *imageUrl = [user.avatar.url stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];

但是我得到了同样的错误。如果 API 有时包含包含空格的图像文件名,则可能会很危险。

最佳答案

我看到三个问题:

  1. -999 表示 NSURLErrorCancelled,因此看起来 URLRequest 以某种方式被取消了。你的这段代码在哪里? cell 对象或UIImageView profileImage 是否有可能过早释放?

  2. AFNetworking 的更新版本要求您在定义成功 block 时自行设置图像。

  3. 确保 URL 有效。

试试这个(放在 tableView:cellForRowAtIndexPath: 中时有效):

__weak UITableViewCell *weakCell = cell;
[cell.imageView setImageWithURLRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:imageUrl]] placeholderImage:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
if (weakCell)
{
weakCell.imageView.image = image;
[weakCell setNeedsLayout];
}
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
NSLog(@"Error: %@", error);
}];

关于ios - AFNetworing - setImageWithURLRequest 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16371876/

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