日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何使用ASINetWorkQueue下载实现

發布時間:2025/6/17 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何使用ASINetWorkQueue下载实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假設有這么個觸發下載方法叫

- (IBAction)startDownLoad:(id)sender?

本地viewController有這么個instance variable : ASINetWorkQueue *netWorkQueue

可以從該實例的頭文件中看到該queue屬于一個NSOperationQueue

在觸發方法實現如下代碼

// lazy init 你的實例netWorkQueue
if
(!networkQueue) {networkQueue = [[ASINetworkQueue alloc]init];}
// 使得每一次下載都是重新來過的[networkQueue reset];
//UI監聽器,設置用來監察整個過程的UI界面 [networkQueue setDownloadProgressDelegate:wholeProgress]; // [networkQueue setRequestDidFinishSelector:@selector(imageFetchComplete:)];
// 設置queue完成后需要實現的UI方法,根據頭文件里面定義,這個UI方法需要一個ASIHTTPRequest 的參數networkQueue.requestDidFinishSelector = @selector(imageFetchComplete:);[networkQueue setRequestDidFailSelector:@selector(imageFetchFailed:)];networkQueue.showAccurateProgress = [self.accurateInfo isOn];
// 如果要實現SEL的方法則根據頭文件定義需要把delegate定為selfnetworkQueue.
delegate = self;

//這里是給queque添加任務的。ASIHTTPRequest
*request;
//定義requestrequest
= [ASIHTTPRequest requestWithURL:[NSURL URLWithString:@"http://allseeing-i.com/ASIHTTPRequest/tests/images/small-image.jpg"]];
//定義request的下載目標地址request.downloadDestinationPath
= [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]stringByAppendingPathComponent:@"1.png"];
//定義request 下載的ui同步request.downloadProgressDelegate
= self.imageView1Progress;
//紀錄request信息request.userInfo
= [NSDictionary dictionaryWithObject:@"request1" forKey:@"name"];[networkQueue addOperation:request];

- (void)imageFetchComplete:(ASIHTTPRequest *)request

{

UIImage *img = [UIImage imageWithContentsOfFile:[request downloadDestinationPath]];

}

轉載于:https://www.cnblogs.com/davidxie/archive/2012/08/26/2657676.html

總結

以上是生活随笔為你收集整理的如何使用ASINetWorkQueue下载实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。