2013-03-08 74 views
0

我從JSON獲取數組,並將其解析爲NSMutableArray(此部分正確且正常工作)。我現在想要獲取該數組並將第一個對象打印到標籤。這裏是我的代碼:是無法獲取數組的索引並將其設置爲NSString

我已經嘗試
NSDictionary *title = [[dictionary objectForKey:@"title"] objectAtIndex:2]; 
arrayLabel   = [title objectForKey:@"label"]; 
NSLog(@"arrayLabel = %@", arrayLabel); // Returns correct 

//Here is where I need help 

string = [arrayLabel objectAtIndex:1]; //I do not get the first label (App crashes) 
NSLog(@"string = %@", string); 

其他的事情如下:

string = [NSString stringWithFormat:@"%@", [arrayImage objectAtIndex:1]]; 

string = [[NSString alloc] initWithFormat:@"%@", [arrayImage objectAtIndex:1]]; 

任何幫助是極大的appriciated!

編輯:應用程序不返回單個值並崩潰。

回答

1

您的代碼與您的JSON結構不匹配。在您對已刪除答案的評論中,您說在將objectAtIndex:發送至NSString時發生異常。在你的情況下,當你認爲它是arrayLabel不是一個數組。

如果您的JSON有一個對象,則您的代碼需要將其視爲NSDictionary。同樣對於數組和NSArray和字符串以及NSString

+0

好,所以我的JSON出了問題。我會研究這一點。但是爲什麼我的NSLog顯示所有的字符串? – RockPaperScissors 2013-03-09 00:35:51

+0

你以爲你在記錄一個數組,但實際上你正在記錄一個字符串。記錄一個字符串仍然有效。 – 2013-03-09 00:36:42

+0

所以如何添加一串字符串到我的數組? – RockPaperScissors 2013-03-09 00:44:45

1

除了其他的事情之外,你可以反覆引用「first」,但使用索引1.在大多數基於C的編程語言(以及其他編程語言)中,約定是數組中的索引是0-根據。所以,使用索引0來獲取第一個元素。

相關問題