iPhone app crash [__NSCFString objectForKey:] unrecognized selector sent to instance

iphone, nsdictionary, nsmutablearray, objective-c

Solution

Why you are crashing

The variable `dict` that you think is a NSDictionary is actually a NSString. Since strings don't respond to the `objectForKey:` method your app crashed. That is what the error message is telling you.

Where the problem lies

Your statement: "data.localBookmarks is array of dictionary" is false. At least one of them is just a string.

Check where your `localBookmarks` comes from. If it's data you are parsing you may need to change that.

Problem

I am trying to add in tempArray only even number of data.localBookmarks is array of dictionary. Here is my code : ``` currentIndex = indexPath.row; for (NSDictionary *dict in localBookmarks) { if (currentIndex % 2 == 0 && currentIndex <= [localBookmarks count]) { [tempArray addObject:[dict objectForKey:@"firstName"]]; } currentIndex++; } NSLog(@"tempArray %@",tempArray); cell.textLabel.text = [tempArray objectAtIndex:indexPath.row]; return cell; ``` my app crash on [tempArray addObject:[dict objectForKey:@"firstName"]]; this line ,How can I fix it?

Original source