Ios 地图视图:DIDTAPMAKER isn';不要选择标记
我有一个带有很多标记的Ios 地图视图:DIDTAPMAKER isn';不要选择标记,ios,objective-c,iphone,cocoa-touch,google-maps-sdk-ios,Ios,Objective C,Iphone,Cocoa Touch,Google Maps Sdk Ios,我有一个带有很多标记的GMSMapView,每个标记代表我客户的一个商店,每次用户靠近其中一个标记(到其中一个商店)时,他都会收到一个带有商店地址的通知 我希望当用户点击通知(通过通知打开应用程序)时,标记将显示在地图上(已选择) 注意:标记是每个Store对象的属性,UILocalNotification存储Store对象的标识符,我就是这样找到正确的存储的 注2:我正在使用谷歌地图iOS SDK 我试着这样做: -(void)application:(UIApplication *)appl
GMSMapView
,每个标记代表我客户的一个商店,每次用户靠近其中一个标记(到其中一个商店)时,他都会收到一个带有商店地址的通知
我希望当用户点击通知(通过通知打开应用程序)时,标记将显示在地图上(已选择)
注意:标记是每个Store
对象的属性,UILocalNotification
存储Store
对象的标识符,我就是这样找到正确的存储的
注2:我正在使用谷歌地图iOS SDK
我试着这样做:
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
NSString *storeIdentifier=[[notification userInfo] objectForKey:@"storeIdentifier"];
Store *notificationsStore=[self.monitorLocationVC storeForIdentifier:storeIdentifier];
[self.myVC mapView:self.myVC.mapView didTapMarker:notificationsStore.marker];
}
由于某些原因,用户打开应用程序时未选择标记
我在myVC.m
上覆盖了mapView:didTapMarker:
,如下所示:
-(BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker
{
return NO;
}
didTapMarker
打开GMSMapViewDelegate
,地图会调用它来通知代码标记已被点击。它没有点击标记
但是,您可以在地图视图上设置selectedMarker
,以选择该标记,并显示其信息窗口(如果有)。例如:
self.myVC.mapView.selectedMarker = notificationsStore.marker;
有关更多示例,请参见此处:
-(BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker
{
viewIwant.hidden=NO;
//or any nib you want
return YES;
}