2012-08-16 70 views
0

好吧,我的代碼返回數組。我的日誌JSONArray婁回報完美,所以我不明白爲什麼字典是給瘋狂的結果公佈如下這段代碼:NSArray中的NSDictionary故障

NSMutableArray *listOfparts = [[NSMutableArray alloc] init]; 
    for (NSDictionary *object in JSONArray) { 
     Part *part = [[Part alloc] initWithpartName:object[@"case_name"] 
       imageName:object[@"case_image"]]; 
     [listOfparts addObject:part]; 

    } 
    NSLog(@"array: %@", JSONArray); 

//日誌中的JSONArray - 看起來不錯//

array: (
     { 
     "case_color" = White; 
     "case_description" = ""; 
     "case_image" = ""; 
     "case_name" = "NZXT Phantom 410"; 
     "case_price" = "99.99"; 
     "case_type" = ATX; 
     id = 1; 
    }, 
     { 
     "case_color" = Black; 
     "case_description" = ""; 
     "case_image" = ""; 
     "case_name" = "Thermaltake MK+"; 
     "case_price" = "84.99"; 
     "case_type" = ATX; 
     id = 2; 
    } 
) 

//登錄對於listOfparts - 不太好看//

array: (
    "<Part: 0x71b5530>", 
    "<Part: 0x71b5640>" 
) 

任何幫助將不勝感激!

更新:我不認爲我的表是得到它的權利,然後

Part *eachpart = [listOfparts objectAtIndex:indexPath.row]; 
    cell.label.text = eachpart.part_name; 
    cell.imageView.image = [UIImage imageNamed:eachpart.part_image]; 

回答

1

要打印Parts我認爲是由您的類(比如一個UIButtonUIView),做這些類有像partName性質或imageName?代之以打印。

順便說一句,你的代碼似乎是做工精細:)

+0

您的權利。我印了他們,他們回來了,但對我的桌子我沒有看到一件事。檢查我的更新。 – kezi 2012-08-16 23:53:34

+0

像這樣訪問單元格的文本'cell.textLabel.text' – ohr 2012-08-16 23:55:51

+0

另外,嘗試使用accessoryView作爲圖像(作爲UIImageView),看看它是如何實現的。 – ohr 2012-08-16 23:59:09

2

如果你正在談論的控制檯上顯示的值,你只看到這些對象的內存地址。這是默認行爲。如果你想讓控制檯顯示你的屬性的值,只需要子類NSObject子類(在本例中爲Part)的 - (NSString *)描述方法,然後返回一個格式爲你想要的屬性值的字符串在控制檯上查看。

+0

是的,花費一點時間爲最常用的類編寫'description'方法是值得的。 – 2012-08-17 00:07:59