问题描述
- 用urlconnection下载图片,接收的数据总大小为什么和一次接收到的数据的大小是一样的?
-
这样的话,做进度条的时候总是1.0 。
代码如下:-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{ [_downloadData setLength:0]; _response = response; } -(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{ [_downloadData appendData:data]; if (_downloadProgress) { _totalBytesRead += (long long)data.length; _downloadProgress(data.length,_totalBytesRead,_response.expectedContentLength); } }
输出如下:
read:33841 totoalread:33841 totalexpected:33841 bytes read:33335 totoalread:67176 totalexpected:33335 bytes read:100142 totoalread:167318 totalexpected:100142
解决方案
解决方案二:
直接打印一下你获取的进度大小是多少,进度条是0-1.0之间。
解决方案三:
[_downloadData setLength:0]; 你反复把它置0了啊
时间: 2024-12-15 04:29:21