我希望在我的应用中有一个“上传进度视图”。就像新的Facebook应用程序一样。只有在上传进度处于活动状态时,才能看到“上传视图”。
UIView应该可以在我的应用程序中的每个UIViewController上看到。
我可以在AppDelegate中插入“Upload-progress-view”吗?
我正在使用AFNetworking。
/ Morten
截图:
正如您所看到的,它是一个简单的UIView,其中包含UIProgressView。我的问题是如何在每个视图(不同的UIViewControllers)上显示这个进度视图?
答案 0 :(得分:1)
此progressBar可以执行相同的操作。
答案 1 :(得分:0)
您使用 ASIHttpRequest 进行上传吗?
如果是,请查看Cocoa File Upload with Progress Bar
<强>编辑:强>
好的,请使用此
NSURL *url = [NSURL URLWithString:@"http://api-base-url.com"];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
NSData *imageData = UIImageJPEGRepresentation([UIImage imageNamed:@"avatar.jpg"], 0.5);
NSMutableURLRequest *request = [httpClient multipartFormRequestWithMethod:@"POST" path:@"/upload" parameters:nil constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) {
[formData appendPartWithFileData:imageData name:@"avatar" fileName:@"avatar.jpg" mimeType:@"image/jpeg"];
}];
AFHTTPRequestOperation *operation = [[[AFHTTPRequestOperation alloc] initWithRequest:request] autorelease];
[operation setUploadProgressBlock:^(NSInteger bytesWritten, long long totalBytesWritten, long long totalBytesExpectedToWrite) {
NSLog(@"Sent %lld of %lld bytes", totalBytesWritten, totalBytesExpectedToWrite);
}];
[operation start];