iphone - 如何实现多个下载代码 objective-c

标签 iphone objective-c ios

抱歉,我觉得有点愚蠢,但是我在实现以下代码以从服务器下载多个文件时遇到了麻烦。我已将 MultipleDownload.h 和 MultipleDownload.m 文件设置为新的 Objective-C 类我的应用程序。但不确定如何从我的 updateView.m 调用它来执行文件下载。根据说明,它说我需要使用以下几行初始化并开始下载。我不知道该把代码放在哪里来开始从网址下载文件。我是否必须在 MultipleDownload.m 代码中设置一个方法并从另一个对象 (updateView.m) 调用该方法来启动下载?或者我是否将这些行放入(updateView.m)中的方法之一?老实说,我都尝试过,但由于某种原因,我不断收到错误,它说 urls.如果我把它放在 updateView.m 中,它会说 self.urls 和 self.downloads 是未声明的标识符。我尝试在 updateView.m 中声明 NSMutableArray *urls 和 MultipleDownload *downloads,但它似乎也不起作用。任何意见将不胜感激。

MultipleDownload.m 和 MultipleDownload.h 代码位于 github 上: http://github.com/leonho/iphone-libs/tree/master

初始化并开始下载:

self.urls = [NSMutableArray arrayWithObjects:
    @"http://maps.google.com/maps/geo?output=json&q=Lai+Chi+Kok,Hong+Kong", 
    @"http://maps.google.com/maps/geo?output=json&q=Central,Hong+Kong",
    @"http://maps.google.com/maps/geo?output=json&q=Wan+Chai,Hong+Kong", 
    nil];  
self.downloads = [[MultipleDownload alloc] initWithUrls: urls]; 
self.downloads.delegate = self; 

最佳答案

你所做的是在updateView.h

为网址(类型 NSMutableArray)和下载(类型 MultiDownload)创建 @properties

然后在updateView.m中添加这些函数

//Function to start download
- (void) startDownload
{
    self.urls = [NSMutableArray arrayWithObjects:
                 @"YourURLS",
                 @"YourURLS",
                 @"YourURLS",
                 nil];
    self.downloads = [[MultipleDownload alloc] initWithUrls: urls];
    self.downloads.delegate = self;
}

 //download finished for 1 item
 - (void) didFinishDownload:(NSNumber*)idx {
    NSLog(@"%d download: %@", [idx intValue], [downloads dataAsStringAtIndex: [idx intValue]]);
 }

 //download finished for all items
 - (void) didFinishAllDownload {
    NSLog(@"Finished all download!");
    [downloads release];
 }

我还建议,如果您在理解 self.urls 和 self.downloads 时遇到问题,请阅读有关 Objective C 和属性的更多信息,祝您好运

关于iphone - 如何实现多个下载代码 objective-c ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11176916/

相关文章:

iphone - 如何在 iPhone NSString 中查找字母、特殊字符?

iphone - 当用户与 ios 中的 slider 交互时, ScrollView 不应滚动

ios - 如何从 iOS 上的硬件键盘检测按键向上/按键按下事件?

iphone - 分段控件的更改值?

ios - 如何在应用增加边界宽度的自定义渲染时保留 ArcGIS map 中填充的颜色

ios - 我真的需要在自定义 UIView 中使用 drawRect() 吗?

iphone - 仅在 iPad(模拟器或设备)上崩溃 - [__NSArrayM insertObject :atIndex:]

ios - 如何根据主数组中的长度对数组进行排序

iphone - XCode iPhone 项目中目标的所有配置的通用预处理器宏

ios - 创建具有透明背景 Swift 的模态视图