使用Google Places API获取附近地点的列表

时间:2015-08-03 11:19:07

标签: ios google-places

我正在开发一个项目,可以获取附近地点的列表(从我当前的位置)。我使用Google Places API,我尝试过的内容如下所示。我看到新视图有一个mapview与最突出的地方的标记位置和表包含这些地方的列表。我需要获取这些地方的列表,以便我可以在我的tableview上渲染它。

  - (IBAction)pickPlace:(UIButton *)sender {
  CLLocationCoordinate2D center = CLLocationCoordinate2DMake(51.5108396, -0.0922251);
  CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(center.latitude + 0.001, center.longitude + 0.001);
  CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(center.latitude - 0.001, center.longitude - 0.001);
  GMSCoordinateBounds *viewport = [[GMSCoordinateBounds alloc] initWithCoordinate:northEast                                                                   coordinate:southWest];
GMSPlacePickerConfig *config = [[GMSPlacePickerConfig alloc] initWithViewport:viewport];
  _placePicker = [[GMSPlacePicker alloc] initWithConfig:config];

  [_placePicker pickPlaceWithCallback:^(GMSPlace *place, NSError *error) {
    if (error != nil) {
      NSLog(@"Pick Place error %@", [error localizedDescription]);
      return;
    }

    if (place != nil) {
      NSLog(@"Place name %@", place.name);
      NSLog(@"Place address %@", place.formattedAddress);
      NSLog(@"Place attributions %@", place.attributions.string);
    } else {
      NSLog(@"No place selected");
    }
  }];
}

2 个答案:

答案 0 :(得分:0)

然后您不应该使用GMSPlacePicker,因为它为您提供了用户界面进行单一选择的UI。如果您想要自己显示的地点列表,那么您应该使用谷歌提供的REST界面来获取所需的详细信息并更新您的用户界面。

答案 1 :(得分:0)

可以使用Google Places API获取附近地点列表(来自我当前的位置)。我使用以下方法来实现相同的目标:

[GMSPlaceClient currentPlaceWithCallback:]

返回附近有可能性的数组。