Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 未找到读取字典元素的预期方法_Objective C_Cocoa - Fatal编程技术网

Objective c 未找到读取字典元素的预期方法

Objective c 未找到读取字典元素的预期方法,objective-c,cocoa,Objective C,Cocoa,我正在更新我的mac应用程序,通过xcode开始使用arc和现代obj-c语法,只是为了测试我们的应用程序,但是当我完成obj-c语法时,我在构建项目时开始出现这个错误 在“NSMutableData*”类型的对象上找不到读取字典元素的预期方法。 -(void) finishedCall:(id)data { NSString *responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEnco

我正在更新我的mac应用程序,通过xcode开始使用arc和现代obj-c语法,只是为了测试我们的应用程序,但是当我完成obj-c语法时,我在构建项目时开始出现这个错误

在“NSMutableData*”类型的对象上找不到读取字典元素的预期方法。

-(void) finishedCall:(id)data {

     NSString *responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

     receivedData = [responseString JSONValue];

    NSLog(@"receivedData-->%@",receivedData);

    NSString *serailizeString = receivedData[@"profile_image_url"];  // <-- Error comes up here

    NSLog (@"Serialize Value : %@",serailizeString);

     [qrcodeMainPage genQR:serailizeString];

}
-(void)finishedCall:(id)数据{
NSString*responseString=[[NSString alloc]initWithData:数据编码:NSUTF8StringEncoding];
receivedData=[responseString JSONValue];
NSLog(@“接收数据-->%@”,接收数据);

NSString*serailizeString=receivedData[@“profile_image_url”];//是否缺少包含JSON扩展方法的JSON类别

http://developer.apple.com/library/ios/#documentation/Foundation/Reference/NSJSONSerialization_Class/Reference/Reference.html

是否缺少包含JSON扩展方法的JSON类别

http://developer.apple.com/library/ios/#documentation/Foundation/Reference/NSJSONSerialization_Class/Reference/Reference.html

您正在使用新的键控订阅语法来尝试访问中的内容(编译器认为是)一个NSData对象,如错误所示,该对象不起作用。可能您希望receivedData是一个字典?如果它在运行时确实是一个NSDictionary,您应该这样声明它。我不知道您调用的
-JSONValue
方法要返回什么,所以我无法确定receivedData是什么或可能是什么。如果它可能是字典,也可能不是,您需要编写更多的代码来检查它的类型和行为是否正确
表示法仅适用于作为支持键控订阅的类实例的对象。NSDictionary是这些类之一。NSData不是。

您正在使用新的键控订阅语法尝试访问中的内容(编译器认为是什么)一个NSData对象,如错误所示,该对象不起作用。可能您希望receivedData是一个字典?如果它在运行时确实是一个NSDictionary,您应该这样声明它。我不知道您调用的
-JSONValue
方法要返回什么,所以我无法确定receivedData是什么或可能是什么。如果它可能是字典,也可能不是,您需要编写更多的代码来检查它的类型和行为是否正确表示法仅适用于作为支持键控订阅的类实例的对象。NSDictionary是这些类之一。NSData不是。

receivedData在哪里声明?它是NSDictionary吗?它在.h@接口TwitterProfileImageOverlay:NSViewController中{IBOutlet NSFormCell*TwitterUserName字段;IBOutlet NSButton*processedButton;NSMutableData*receivedData;}receivedData在哪里声明?它是NSDictionary吗?它在.h@接口TwitterProfileImageOverlay:NSViewController中{IBOutlet NSFormCell*twitter用户名字段;IBOutlet NSButton*processedButton;NSMutableData*receivedData;}感谢@Andrew Madsen将挖掘更多:-)是重构->转换为ARC导致整个项目混乱,因为它使用了一些旧代码。感谢@Andrew Madsen将挖掘更多:-)是重构->转换为ARC导致整个项目混乱,因为它使用了一些旧代码。