2011-09-24 23 views
0

我試圖實現對圖像上傳一個UIProgressView所以我uiprogressview跳到然後99%使用ASIFormDataRequest

uploadProgress = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault]; 
[uploadProgress setFrame:CGRectMake(85, 19, 150, 9)]; 

imageRequest = [[ASIFormDataRequest alloc] initWithURL:[NSURL URLWithString:@"http://theurl.com"]]; 
[imageRequest setDelegate:self]; 
[imageRequest setDidFinishSelector:@selector(uploadedImage:)]; 
[imageRequest setDidFailSelector:@selector(asiRequestFailed:)]; 
[imageRequest setTimeOutSeconds:60]; 
[imageRequest addData:imgData forKey:@"file"]; 
[imageRequest addPostValue:[parameters yajl_JSONString] forKey:@"json"]; 
[imageRequest setUploadProgressDelegate:uploadProgress]; 
[imageRequest setShowAccurateProgress:YES]; 
[imageRequest startAsynchronous]; 

它加載了一段時間將它設置爲100%,然後跳轉到近100%,那麼它達到100%,然後幾秒鐘後,它完成。我的代碼中是否存在某些內容,或者是否需要在服務器端執行某些操作?

謝謝

回答

1

跟蹤郵政操作總是會有這個問題。數據上傳,然後您的應用程序必須等待您的服務器的響應,它已成功完成。 ASIFormDataRequest知道數據的增量發送,所以它可以準確地跟蹤這個進程,直到發送最後一個數據位。但是,它不知道你的服務器需要多長時間才能響應以確認整個上傳已成功接收(當你調用didFinishSelector時)。你的上傳速度很快,進度跟蹤高達99%,然後坐在99%,直到uploadImage被調用,這表示完成,100%。

相關問題