0
我已閱讀關於在我的應用程序中使用ASIHTTPRequest在documentation中實現自定義進度跟蹤。它提到實施2種方法,request:didReceiveBytes:
和request:incrementDownloadSizeBy:
。我已經將這些添加到了我的視圖控制器中,但它們沒有被調用。我只是試圖讓示例代碼在這一點上工作。ASIHTTPRequest自定義進度跟蹤
// ViewController.m
- (void)fetchThisURLFiveTimes:(NSURL *)url
{
[myQueue cancelAllOperations];
[myQueue setDownloadProgressDelegate:self];
[myQueue setDelegate:self];
[myQueue setRequestDidFinishSelector:@selector(queueComplete:)];
int i;
for (i=0; i<5; i++) {
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
request.showAccurateProgress = YES;
[myQueue addOperation:request];
}
myQueue.showAccurateProgress = YES;
[myQueue go];
}
- (void)queueComplete:(ASINetworkQueue *)queue
{
NSLog(@"Value: %f", [myProgressIndicator progress]);
}
- (void)request:(ASIHTTPRequest *)request didReceiveBytes:(long long)bytes
{
NSLog(@"bytes: %lld", bytes);
}
- (void)request:(ASIHTTPRequest *)request incrementDownloadSizeBy:(long long)newLength
{
NSLog(@"newLength: %lld", newLength);
}
我在做什麼錯在這裏?
我相信這個錯誤是因爲你將隊列委託與ASIHTTPRequest混合在一起!你提到的方法只能用於ASIHTTPRequest!請查看ASI支持頁面上的這個部分'關於ASINetworkQueues' – Mateus 2013-03-27 22:03:00
你是說這些方法只能用於ASIHTTPRequest而不是ASINetworkQueue? ASINetworkQueue包含多個ASIHTTPRequest對象,所以我認爲它應該可以工作。 – 2013-03-28 14:38:11