【问题标题】:iPhone app crash [__NSCFString objectForKey:] unrecognized selector sent to instanceiPhone 应用程序崩溃 [__NSCFString objectForKey:] 无法识别的选择器发送到实例
【发布时间】:2013-04-03 12:52:18
【问题描述】:

我试图在 tempArray 中添加偶数个 data.localBookmarks 是字典数组。这是我的代码:

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;

我的应用程序在 [tempArray addObject:[dict objectForKey:@"firstName"]] 上崩溃;这条线,我该如何解决?

【问题讨论】:

  • 嗯,从错误消息中很明显...dict 实际上是一个字符串(即检查您的localBookmarks 是否只包含字典)
  • wt 是 localBookMarks ??是 NSDictionary 吗??

标签: iphone objective-c nsmutablearray nsdictionary


【解决方案1】:

为什么你会崩溃

你认为是 NSDictionary 的变量 dict 实际上是一个 NSString。由于字符串不响应 objectForKey: 方法,您的应用程序崩溃了。这就是错误消息告诉您的内容。

问题出在哪里

您的陈述:“data.localBookmarks 是字典数组”是错误的。其中至少有一个只是一个字符串。

检查您的localBookmarks 来自哪里。如果您正在解析的是数据,您可能需要更改它。

【讨论】:

  • 谢谢大卫,在 localBookmarks 数组中包含字符串也不是所有的字典,我弄错了。
猜你喜欢
  • 2014-04-26
  • 1970-01-01
  • 2023-03-14
  • 2016-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多