将NSMutableArray从Delegate传递到tableview

时间:2010-01-06 12:57:24

标签: iphone cocoa-touch uitableview nsmutablearray

我想在将委托中的NSMutableArray传递给tableview控制器然后重新加载它的数据时遇到问题, 我需要这样做,因为我在委托中有我的套接字,当它接收数据时,它返回一个NSMutableArray,它应该是tableview的数据,不幸的是它传递了nil :( 生病了我的代码:D

DELEGATE:

我已经合成了tableviewcontroller以使用get-set

@property(nonatomic, retain) DownloadsController *downloads_Controller;

现在代码:

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
if([elementName isEqualToString:@"downloads"] || [elementName isEqualToString:@"results"]){
    if([elementName isEqualToString:@"downloads"]){
        NSLog(@"downloads found...  reloading table");
        downloads_Controller.downloads= xmlArray;
        NSLog(@"%@ passed from %@", self.downloads_Controller.downloads, xmlArray); // <-- first value return nil, while xmlArray displays properly
        [downloads_Controller.tableView reloadData];
    }
}
}

下载控制器:

我在这里做了同样的事情,以便使用get-set

@property(nonatomic, retain) NSMutableArray *downloads;

不幸的是,当在AppDelegate中调用解析器委托时,会发生这种情况:

2010-01-06 13:43:41.770 iMule[613:20b] downloads found...  reloading table
2010-01-06 13:43:41.772 iMule[613:20b] (null) passed from ( <-- FIRST ARGUMENT NULL :(
    {
    name = joe;
    type = text;
    },
    {
    name = joe2;
    type = text;
    }
 )

任何人都有任何建议???

谢谢= D

1 个答案:

答案 0 :(得分:0)

DID IT !!! 我完全忘了连接IB中的tableviewcontroller!现在一切都很完美!!!

感谢您的回答:D