我有两个类miaEvents和miaLocations。在miaEvents上,我有一个名为“locationEvent”的列指针类型。我正在试图从该列中检索数据。这就是我的做法。
__block NSString *myString;
PFObject *obj = [self.event objectForKey:@"locationEvent"];
[obj fetchInBackgroundWithBlock:^(PFObject *object, NSError *error) {
if (!error) {
myString = [object objectForKey:@"Name"];
}
}];
NSLog(@"Name %@", myString);
我的输出返回“Name(null)”。不知道为什么会发生这种情况。请指教。
答案 0 :(得分:0)
那是因为fetchInBackgroundWithBlock异步执行请求。
你必须搬家
NSLog(@"Name %@", myString);
如果要显示/使用获取的对象,请在fetchInBackgroundWithBlock的回调块中:
__block NSString *myString;
PFObject *obj = [self.event objectForKey:@"locationEvent"];
[obj fetchInBackgroundWithBlock:^(PFObject *object, NSError *error) {
if (!error) {
myString = [object objectForKey:@"Name"];
NSLog(@"Name %@", myString);
}
}];