2014-02-26 67 views
0

我有兩個nsmutableArrayArr_jsondata,第二個是tempArray添加一個NSMuatblearray到另一個NSMutablearray?

已經有Arr_jsondata包含來自json鏈接的數據並在tableview中顯示。

我想添加temparray數據到Arr_jsondata和重新加載表使用Arr_jsondata,因爲tableview委託也用於這個數組顯示tableview中的數據。

但它總是給我一個錯誤,當我添加臨時數組數據到arr_jsondata

for (int i=0; i<[Temp_arr_JsonData count]; i++) 
{ 
    NSString *str_brandname = [[Temp_arr_JsonData objectAtIndex:i] valueForKey:@"storebrand"]; 

    NSLog(@"%@",str_brandname); 

    NSObject *myNewObject = [[NSObject alloc] init]; 

    if ([str_brandname isEqualToString:@"Nike"]) 
    { 
     NSLog(@"Data matched"); 
     c++; 
     myNewObject = [Temp_arr_JsonData objectAtIndex:i]; 
     [temparray addObject:myNewObject]; 
    } 
} 

// arr_JsonData=temparray; 
[[arr_JsonData arrayByAddingObjectsFromArray:temparray] mutableCopy]; 
NSLog(@"%@",temparray);//display all nike related data 
NSLog(@"%@",arr_JsonData);//display null array . 

[self.tableView reloadData]; 

[sender setSelected:YES]; 

在最後我只想tempdataArr_jsondata .....我能做些什麼?

+1

錯誤僅 [[arr_JsonData arrayByAddingObjectsFromArray:temparray] mutableCopy]; – MAC113

回答

1

只需從數組中添加對象。見this apple's doc

if (arr_JsonData.count > 0) 
    [arr_JsonData addObjectsFromArray: (NSArray*)temparray]; 
else 
    arr_JsonData = [NSMutableArray arrayWithArray:(NSArray*)temparray] 
+0

其因未捕獲的異常「NSInternalInconsistencyException」,原因給出任何類似 終止應用程序錯誤sigbrd錯誤:「 - [__ NSCFArray insertObject:atIndex:]:變異的方法發送到不可變對象」 – MAC113

+0

和我已經嘗試這種 – MAC113

+0

雅。因爲你已經在某個地方用NSArray創建了。首先,你在哪裏創建了'arr_JsonData'?檢查並修改。 – Mani

0

你可以試試這個

[arr_JsonData addObjectsFromArray:tempArray]; 
0

我覺得arr_JsonDataNSMutableArray實際上可以從你的回答中列出的除外說明來判斷。試試這個:

arr_JsonData = [NSMutableArray arrayWithArray:arr_JsonData]; 
[arr_JsonData addObjectsFromArray: temparray]; 
0

嘗試使用這樣的:

NSMutableArray *ar = [NSMutableArray alloc] initWithArray:ar1]; 

就必須初始化與其他陣列陣列,它會從其他陣列中的所有內容。

或者這一個:

NSMutableArray *ar = [NSMutableArray alloc] initWithArray:ar1 copyItems:YES]; 
0

mutableCopy在這一行NSArray沒有定義NSMutableArray

if ([arr_JsonData count] > 0) 
{ 
    [arr_JsonData addObjectsFromArray: temparray]; 
} 
相關問題