2010-01-06 69 views
0

當我想要從代理傳遞一個NSMutableArray到一個tableview控制器,然後重新加載它的數據時,我遇到了一個問題,我需要這樣做,因爲我有我的套接字在代理中,當它接收數據,它返回它應該是爲實現代碼如下的數據NSMutableArray的,不幸的是它傳遞零:( 生病告訴你我的代碼:d從代理傳遞NSMutableArray到tableview

委託:

我爲了使用已合成的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-設置

@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

+0

套接字是否在不同的線程上接收數據? – catsby 2010-01-06 13:01:18

+0

不應該'downloads_Controller.downloads = xmlArray;'是'self.downloads_Controller.downloads = xmlArray;'?或者是一個錯字? – catsby 2010-01-06 13:05:15

+0

自我是首選,但沒有自我,它只會跳過訪問器,如果你使用的是像鍵值編碼(KVC)這樣的東西,這是非常糟糕的。 – Anurag 2010-01-06 13:14:59

回答

0

做到了! 我完全忘了連接IB中的tableviewcontroller!現在一切都完美了!

感謝您的回答:D

相關問題