Xcode 4.3.2和SBJSON

时间:2012-05-03 08:02:11

标签: objective-c ios

我正在开发一个iOS应用程序。我正在使用Xcode 4.3.2SBJSON,我已将所有JSON类导入到我的项目中并且编译得很好,但是当我在项目中导航时,我发生了这样的崩溃:-[__NSCFDictionary JSONRepresentation]: unrecognized selector sent to instance

在我的代码中,我这样做:NSString *jsonString = [dic JSONRepresentation]; dic是NSDictionnary.

感谢您的回答

2 个答案:

答案 0 :(得分:0)

尝试以下代码,其中responseString是您从解析器收到的响应字符串。

SBJSON *json = [SBJSON new];    
NSMutableDictionary *jsonDictionary = (NSMutableDictionary*) [json objectWithString:responseString error:nil];

答案 1 :(得分:0)

JSONRepresentation不是Apple的NSDictionary类的一部分。

这是JSON Api中包含的非常有用的类别。

=>您使用的是this JSON Api吗?

=>你是否正确导入了JSON Api头文件?

=>如果您查看代码,JSONRepresentation类别是否声明为:

@interface NSDictionary (NSDictionary_SBJsonWriting)
/// Returns a string containing the receiver encoded in JSON.
- (NSString *)JSONRepresentation;
@end

使用.m文件中的相应代码?

编辑:

如果您正在创建一个静态库并在其中使用JSON Api(或其他API),您应该在库的构建设置和调用项目中进行一些更改。

    在库构建设置中
  • ,检查“其他链接器标志”行。值应为:“ - ObjC”

  • 在调用项目的构建设置中,“其他链接器标志”的值应为“-all_load”