2013-03-30 52 views
0

我想弄清楚如何從JSON數組中填充表。到目前爲止,我可以填充我的表細胞通過使用下面的代碼完美的罰款:設置數組等於JSON數組 - Xcode

self.countries = [[NSArray alloc]initWithObjects:@"Argentina",@"China",@"Russia",nil]; 

關於JSON,我可以成功地檢索一個文本行的時間和在標籤中顯示。我的目標是從JSON數組填充整個表視圖。我嘗試使用下面的代碼,但它仍然不會填充我的表。很顯然,我做錯了什麼,但我到處找,但還是無法弄清楚:

NSURL *url = [NSURL URLWithString:@"http://BlahBlahBlah.com/CountryList"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 

AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) 
{ 
    NSLog(@"%@",[JSON objectForKey:@"COUNTRIES"]); 
    self.countries = [JSON objectForKey:@"COUNTRIES"]; 
} 
failure:nil]; 
[operation start]; 

我肯定數據被檢索到,因爲輸出的NSLog文字完美的罰款。但是當我嘗試將我的數組設置爲等於JSON數組時,沒有任何反應。我知道代碼可能是錯誤的,但我認爲我在正確的軌道上。您的幫助將不勝感激。

編輯: 這是JSON文件中的文本我使用:

{ 
"COUNTRIES": ["Argentina", "China", "Russia",] 
}   

-Miles

+0

可以請你展示你的json結構嗎?這是否像字典陣列或類似的東西?並嘗試將您的數組類型NSArray更改爲NSMutableArray。 –

+0

@MicRO我發佈了上面的JSON結構。我希望這就是你的意思。 NSMutableArray沒有做任何事情,但我真的很感謝答覆。 – mpl

回答

1

看來,你需要一些基本的JSON解析。如果您只針對iOS 5.0及更高版本的設備,那麼您應該使用NSJSONSerialization。如果您需要支持較早的iOS版本,那麼我真的推薦開源的JSONKit框架。

推薦以上內容後,我自己幾乎總是使用Sensible TableView框架從我的Web服務中獲取所有數據並自動將其顯示在表格視圖中。爲我節省了大量的體力勞動,使應用程序維護變得輕而易舉,所以它可能也是需要考慮的事情。祝你好運!