完成时GMSAutoComplete未在地图上显示正确的位置

时间:2016-06-14 15:19:27

标签: ios objective-c google-maps google-maps-sdk-ios gmsautocomplete

我在Objective C视图中使用Google Maps API自动填充功能,允许用户搜索地址,然后在我的应用程序的地图上显示。这工作正常并且自动完成视图加载,允许您填写它然后消失并在地址文本框中显示您的地址。地图不会定位在您的位置,而是似乎保留在之前的位置,除非您移动地图然后重新加载,它将显示您键入自动完成的地址。我将发布以下代码以进行自动完成整理并消失。

- (void)viewController:(GMSAutocompleteViewController *)viewController
didAutocompleteWithPlace:(GMSPlace *)place {


    // Do something with the selected place.
   // [self.locationclickText setTitle:place.name forState:UIControlStateNormal];
    latitude2=place.coordinate.latitude;
    longitude2=place.coordinate.longitude;
    NSString *placeName=place.name;
    self.address.text=placeName;
  //  NSString *placeID=place.placeID;


    [_mapView animateWithCameraUpdate:[GMSCameraUpdate setTarget:CLLocationCoordinate2DMake(place.coordinate.latitude, place.coordinate.longitude) zoom:17]];


   // NSLog(@"Place ID %@", placeID);
    //NSLog(@"Place attributions %@", place.attributions.string);
    [self dismissViewControllerAnimated:YES completion:nil];

}

1 个答案:

答案 0 :(得分:0)

我可能在这里误解了你的问题。您是否在问自己为何选择地点时自动更新MapView(_mapview)(要求您自己致电animateWithCameraUpdate)?

如果是这样,那么答案是它按预期工作。 GMSAutocompleteViewController的实例不会在您的应用中神奇地了解GMSMapView,也不会尝试控制它们。