繁体   English   中英

为什么我的nimbus didImageLoad方法没有被调用?

[英]Why aren't my nimbus didImageLoad methods being called?

我是Nimbus的新手。 现在,我的应用正在尝试通过以下代码检索4张图像:

for (int i=minFoto; i<=maxFoto; i++) {

    NINetworkImageView* networkImageView = [self networkImageView];

    NSString *resourceURL = [NSString stringWithFormat:@"%@registration/rest/users/account_get_foto/%@?fotoId=%d", baseURL, ssid,  i];

    NSLog(resourceURL);

    [networkImageView setPathToNetworkImage:resourceURL
                             forDisplaySize: CGSizeMake(50, 50)
                                contentMode: networkImageView.contentMode];

我知道我的循环正在工作,因为我看到所有四个NSLog都正确输出了。 但是,我只得到第一张图片。 networkImageViewDidStartLoad仅被调用一次,并且didLoadImage或networkImageViewDidFailLoad均未被调用。 我认为didLoadImage从未被调用很奇怪。 决不。 我知道我有数据,因为我正在使用CharlieProxy(很棒的应用程序BTW,非常值得50美元),它在响应数据包中显示图像数据。

所以我从我的代表中评论了这一点:

[[Nimbus networkOperationQueue] setMaxConcurrentOperationCount:1];

如您所料,我收到4个对networkImageViewDidStartLoad的调用,而对didLoadImage或networkImageViewDidFailLoad的调用仍然为零。

这是我的请求标头(来自CharlieProxy)

GET /registration/rest/users/account_get_foto/fdbc2222-7b75-4ff4-b111-623e951e5b00?fotoId=134     HTTP/1.1
Host: -------------:8080
User-Agent: Ferret/1.0 CFNetwork/548.0.3 Darwin/11.2.0
Accept: */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: keep-alive

这是响应标题,显示“ 200 OK”

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: Servlet/3.0; JBossAS-6
Content-Type: image/*
Content-Length: 461109
Date: Tue, 31 Jan 2012 21:12:33 GMT

âPNG (png data deleted...)

我现在有点困惑。 我的服务器显然正在返回图像数据,但我的应用程序却没有得到它。 有任何想法吗?

好吧,我找到了。 也可能为将来的Google员工提供答案。

我的networkImageView已超出范围,并且已进行ARC。 有趣的是,我以为我已将其保存下来,但是该代码被部分注释掉了!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM