我正在尝试使用FBPlacePickerViewController,它似乎没有加载任何数据。 这是我的代码:
FBPlacePickerViewController *picker = (FBPlacePickerViewController*)segue.destinationViewController;
picker.navigationController.navigationBarHidden = YES;
picker.delegate = self;
picker.radiusInMeters = 1000;
picker.resultsLimit = 30;
if([TonerAppDelegate instance].lastLocation != nil){
picker.locationCoordinate = [TonerAppDelegate instance].lastLocation.coordinate;
[picker loadData];
}
[TonerAppDelegate instance].lastLocationUpdateFunction = ^{
picker.locationCoordinate = [TonerAppDelegate instance].lastLocation.coordinate;
[picker loadData];
};
这是一个嵌入式segue(iOS 6)。我验证picker
是一个有效的对象。调用[picker loadData]
方法,坐标数据完全有效。我没有得到任何例外或警告。我允许我的应用访问我在iOS中的位置,并在“设置”中对其进行了双重验证。我的iPod连接到互联网,连接完美。所有其他应用程序可以毫无问题地使用位置服务。因此,我的地方选择器的实现可能存在问题。我还实现了委托的-(void)placePickerViewControllerDataDidChange:(FBPlacePickerViewController *)placePicker
和-(BOOL)placePickerViewController:(FBPlacePickerViewController *)placePicker shouldIncludePlace:(id<FBGraphPlace>)
方法,但它们也没有被调用。我做错了什么?
谢谢,
可以。
答案 0 :(得分:2)
找到答案:在显示地点选择器之前,我没有创建Facebook会话。我完全忘了会议。很高兴看到Facebook在现有Facebook会话的选择器的loadData
方法中添加断言检查。我已经创建了会话,然后我尝试了我的代码,它现在运行得很好。