我有一个应用程序,其上有一个包含大量标记的地图,应用程序会在他接近其中一个标记时通知用户。我使用Google Maps iOS SDK
作为地图,这意味着我使用GMSMapView
作为地图视图(mapView
)。
我想要当用户通过通知打开应用程序(点击通知)时,地图的相机会自动指向通知的标记。
我试图这样做:
AppDelegate.m :
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
NSString *markerIdentifier=[[notification userInfo] objectForKey:@"markerIdentifier"];
GMSMarker *marker=[self markerForIdentifier:markerIdentifier];
[self.aroundersVC.mapView setSelectedMarker:storeMarker];
//Important part:
[self.aroundersVC animateMapToMarkerPosition:storeMarker];
}
AroundersViewController :
-(void)animateMapToMarkerPosition:(GMSMarker*)marker
{
GMSCameraPosition *currentLocationCameraPosition=[GMSCameraPosition cameraWithLatitude:marker.position.latitude longitude:marker.position.longitude zoom:16];
[self.mapView animateToCameraPosition:currentLocationCameraPosition];
}
但由于某些原因它没有工作,有人知道为什么吗?
谢谢!
答案 0 :(得分:0)
使用GMSMapview委托
-(void)mapView:(GMSMapView *)mapView didChangeCameraPosition:(GMSCameraPosition *)position
{
// Do your stuff here
}
这可以解决您的问题。