2012-06-12 220 views
0

作爲標題表明我試圖從JSON填充UITableView。我得到的JSON對象,它看起來像填充UITableView嵌套JSON

{ 
    applications: { 
      iphone: { 
      application: [ 
          { 
           title: "Title", 
          }, 
          { 
           title: "Title2", 
          }, 
          { 
           title: "Title3", 
          } 
          ] 
         } 
        } 
    } 

它繼續這樣,有幾個title領域嵌套應用程序內部。

我想用所有的標題爲我的電池標籤。 我能得到像這樣

for (int i = 0; i < 10; i++) 
    { 
     titleString = [[[[[result objectForKey:@"applications"] objectForKey:@"iphone"] objectForKey:@"application"] objectAtIndex:i] objectForKey:@"title"]; 
     NSLog(@"title %@", titleString); 
    } 

它不工作,在我可以登錄標題的列表清單...但我知道我在錯誤的道路要對此,我甚至不能找出myArray將在return [myArray count]numberOfRowsInSection方法中......完全丟在這裏!幫助表示讚賞!

+0

您的JSON對象看起來不完整的。 – Jake1164

+0

這是真的,因爲我爲了清楚起見而切斷它。我成功地檢索了應用程序中的JSON。 – sixstatesaway

+0

發佈一些完整的json –

回答

1

[[[result objectForKey:@"applications"] objectForKey:@"iphone"] objectForKey:@"application"]是否會返回一個數組,所以更好地保存這個數組,並使用它需要的地方如下:。

NSArray *titleArray = [[[result objectForKey:@"applications"] objectForKey:@"iphone"] objectForKey:@"application"]; 

存儲該陣列可以使用實例變量,以便您可以使用它的整個文件。

0

您可以在陣列中存儲這些標題使用這個數組作爲數據源的表。你myarray的將是數組的存儲職稱

0

首先是應用字典
本申請詞典有鍵iPhone
的一個詞典此iphoneDic具有字典

陣列
NSMutableDictionary *applicationsDict = [response objectForKey:@"applications"]; 
NSMutableDictionary *iphoneDict = [applicationsDict objectForKey:@"iphone"]; 
NSMutableArray *applicationArray = [iphoneDict objectForKey:@"application"]; 
現在

在方法numberOfRowInSection:表視圖的返回數組計數

return [applicationArray count] 

現在在cellForRowAtIndexPath:方法我們將使用此應用程序陣列
使用數組...

NSMutableDictionary *titleDict = [applicationArray objectAtIndex:indexPath.row]; 
cell.titleLabel.text = [titleDict objectForKey:@"title"]; 

我希望這將有助於你