我有一個MutableArray填充有從一個數據庫值:NSArray的錯誤:NSCFArray objectAtIndex索引(5)超過界限(5)
NSMutableArray *objectsArray = [[NSMutableArray alloc] init];
for (int n=0; n<[self.array count]; n++) {
[objectsArray addObject:[[self.array objectAtIndex:n] objectForKey:@"Name"]];
[objectsArray addObject:[[self.array objectAtIndex:n] objectForKey:@"Name_En"]];
}
我顯示在標籤上的值,象這樣:
cell.textLabel.text = [[[dic objectForKey:@"d"] objectAtIndex:indexPath.row] objectForKey:@"Name"];
cell.detailTextLabel.text = [[[dic objectForKey:@"d"] objectAtIndex:indexPath.row] objectForKey:@"Name_En"];
到目前爲止,該應用程序工作正常。它在不拋出異常的情況下開始,值在標籤中。但如果我開始滾動應用程序崩潰,並且出現以下錯誤:
Terminating app due to uncaught exception 'NSRangeException', reason: '-[__NSCFArray objectAtIndex:]: index (5) beyond bounds (5)'
爲什麼會發生此錯誤?
我該如何解決這個問題?因爲字典 – Bashud
中只有5個值,請查看'-tableView:numberOfRowsInSection:'方法,那麼您必須返回數組中的項目數。 – graver
我返回它這樣的 - (NSInteger的)的tableView:(UITableView的*)的tableView numberOfRowsInSection:(NSInteger的)部分 { 返回[objectsArray計數]; } – Bashud