【发布时间】:2012-04-02 22:26:00
【问题描述】:
我解决了一些用户在我的应用从 Twitter 加载 JSON 时遇到的错误:
-[__NSCFString objectForKey:] unrecognized selector
经过研究,我认为问题是使用 NSDictionary 而不是 NSArray 的结果。但是,我的问题是,为什么某些使用完全相同的设备和 iOS 版本的用户会间歇性地遇到错误?为什么它不会每次都对每个人都出错或永远不会出错?这是否与设备上正在使用的内存或从服务器接收数据的中断有关?
编辑:
//I have since changed statuses to an NSArray
NSDictionary *statuses = [[NSDictionary alloc] init];
statuses = [output JSONValue];
for (NSDictionary *status in statuses)
{
Tweets *aTweet = [[Tweets alloc] init];
//error began (fatal error) on following line
aTweet.text = [status objectForKey:@"text"];
aTweet.created_at = [status objectForKey:@"created_at"];
aTweet.created_date = [dateImporter dateFromString:aTweet.created_at];
[self.tweets addObject:aTweet];
aTweet = nil;
}
【问题讨论】:
-
哇...在 Hades 中我们如何在没有代码的情况下诊断代码?
-
好吧,我认为这个问题有点笼统,因为我已经解决了错误,但是,我已经添加了代码
-
您没有发布您的解决方案,但我猜:您将 objectForKey 发送到状态,而不是状态,对吧? Xcode 自动完成功能是编程中发生过的最好和最糟糕的事情。
-
@danh 我将状态从 NSDictionary 更改为 NSArray,因为它没有任何键
标签: iphone objective-c ios json twitter