我使用以下代码向图形 api 发送请求并将其显示在标签中
[FBRequestConnection startWithGraphPath:@"40123148903?fields=picture" completionHandler:^(FBRequestConnection *connection, id<FBGraphObject> result, NSError *error)
{
if(!error)
{
self.tryLabal.text = [[[result objectForKey:@"picture"] objectForKey:@"data"]objectForKey:@"url"];
}
}
];
问题是它只允许我使用块内的图形对象。我想保留返回的结果。
我尝试声明一个 id 属性并将其分配给结果 id
self.tryGraphObject = result;
感谢这里的一位成员,我得到了更多信息:在 ios facebook sdk 3.0 中,我们使用 facebook 委托处理了图形 api 调用的结果,该委托在回复返回时被调用。现在在 3.1 中,他们更改了逻辑,以便每个请求都带有一个名为“完成处理程序”的块,可以让您处理结果。问题是我无法保存结果以供进一步使用,因为由于某种原因它不允许我
编辑:原来我错了,问题是不同的。我打破了代码,结果发现我认为它没有设置属性,但确实如此。就在视图加载之后。基本上它在等待来自 Facebook 的回复时一直运行代码,这意味着视图在返回值之前加载,因此它显示基于空属性的视图。我能做些什么?