Ios 无法识别的选择器
可能重复:Ios 无法识别的选择器,ios,selector,sbjson,Ios,Selector,Sbjson,可能重复: 我在两个项目中使用了SBJson()。因此,我下载了代码并将其复制到我的第一个项目中,这样我就可以做类似的事情 NSMutableDictionary* dict = [[NSMutableDictionary alloc] init]; [dict setValue:email forKey:@"email"]; [dict setValue:password forKey:@"password"]; NSString* json = [dict JSONRepresentat
我在两个项目中使用了SBJson()。因此,我下载了代码并将其复制到我的第一个项目中,这样我就可以做类似的事情
NSMutableDictionary* dict = [[NSMutableDictionary alloc] init];
[dict setValue:email forKey:@"email"];
[dict setValue:password forKey:@"password"];
NSString* json = [dict JSONRepresentation];
现在,对于我的第二个和新项目,我也做了同样的事情。我将所有源文件从SBJson复制到我的新项目中,并使用与上面完全相同的代码。但是现在当程序到达第NSString*json=[dict JSONRepresentation]行时;我收到以下错误消息:
-[\uu NSCFDictionary JSONRepresentation]:发送到实例0x689c710的无法识别的选择器
我在第二个项目中做错了什么?确保所有文件都已添加到目标中
请检查此链接:您是否导入了
SBJson.h
?我确信您使用的是静态库,但链接器没有将SBJson添加到NSDictionary的类别文件合并到NSDictionary中。@BillWilson这没有什么区别。这是一个运行时错误,不是编译器警告。Obj-C是一种动态语言;导入头只是为了愚弄编译器,方法名查找是在运行时进行的。@H2C03我没有看到提到静态库,听起来所有源代码都包含在他的项目中。在任何情况下,都可能是所有文件都已添加到项目中,但未包含在目标中。也许吧?谢谢你的回答。我的问题已经通过上面的评论解决了。