2011-07-21 20 views
0

我创建一个类XMLParsing.h /平方米,它加载一个URL,解析XML到NSString的和NSNumbers,然后把解析字符串转换为一个NSMutableArray称为“showArray”。如何调用在另一个类中创建的NSMutableArray?

的XML设置,使每个孩子都有一个“身份证”,然后其他变量。所以在阵列中,我们有:

的NSNumber:(从XML的ID) 的NSString:(标题) 的NSString:(介绍) 的NSString:(场地)

在另一类,ShowDetailViewController.h/m,我想加载该数组和它的对象,并且基于前一个视图中单击的TableView单元格,我想要为nib中的项目(本例中为标签)填充“id特定的“来自XML的数据。所以,举例来说:

在我的TableView,每个节目的标题列(从XML)。用户点击标题,然后推送另一个视图,该视图显示从解析的XML加载的节目标题,说明和场地。

所有这一切都在分析一个NSMutableArray数据存在,但我的问题是,我似乎无法访问另一个类的对象。该数组一直返回null。

我曾尝试:

以我ShowDetailViewController.m,我有一个包含一个方法:

XMLParsing *xmlClass = [[XMLParsing alloc] init]; 
NSLog(@"The array contains: %@", xmlClass.showArray); 
[xmlClass release]; 

但是,结果始终是 “该数组包含:(NULL)” 如果我在XMLParsing类本身内运行相同的NSLog,它将打印整个数组。所以,我知道数据解析成字符串很好,并且它被存储在数组中。然而,它并不是在课程开始之前就访问过的。

在XMLParsing类,我已经取得了的NSMutableArray * showArray,非原子,保留和合成属性。我哪里错了?

预先感谢所有帮助!

回答

0

在showviewcontroller类试一试在你的XMLParsing类

-(NSMutableArray *)parseURL { 


self.showarray = [[NSMutableArray alloc]init]; 

NSString *getURLString = @"url" 

NSURL *xmlURL = [NSURL URLWithString:getURLString]; 

xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlURL]; 

[xmlParser setDelegate:self]; 

[xmlParser parse]; 

return showarray; 

}

XMLParsing *xmlClass = [[XMLParsing alloc] init]; 

     anyArray = [xmlClass parseURL]; 
+0

对不起,我想这是我的错,我不清楚,我使用的是第三方分析API - TBXML(用于可可触摸)。我不好意思提到这件事。我会尝试一些修改的建议并回复你!感谢您的快速回复! –

+0

谢谢,很好,刚刚用我的[self myParseMethod]替换了解析代码, –

相关问题