我通过其官方CocoaPod使用最新版本的Google Maps SDK。
我应该指出,在更新CocoaPod之前,所有工作都已完成。以下是创建标记的一些代码:
UIImage *markerIcon = [self imageFromView:view];
marker.infoWindowAnchor = CGPointMake(0.50f, 0.90);
marker.icon = markerIcon;
marker.map = mapView;
marker.position = CLLocationCoordinate2DMake([entry.latitude doubleValue], [entry.longitude doubleValue]);
marker.infoWindowAnchor = CGPointMake(0.44f, 0.45f);
marker.appearAnimation = kGMSMarkerAnimationPop;
正在调用我的地图委托方法,因为我可以看到我的日志语句:
- (UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker {
NSLog(@"Custom info window!");
CustomInfoWindow *view = [[[NSBundle mainBundle] loadNibNamed:@"CustomInfoWindow" owner:self options:nil] objectAtIndex:0];
view.layer.zPosition = 99;
MapMarkerData *markerData = [MapMarkerData new];
markerData = marker.userData;
view.storeName.text = markerData.title;
view.storeAddress.text = markerData.address;
view.storeRacks.text = markerData.racks;
return view;
}
我尝试过将zPositionto MAXFLOAT设置为没有运气。
从nil
返回markerInfoWindow
应显示默认信息窗口,该窗口也不起作用。
我在iOS 8.1,9.2.1和9.3.1上尝试了这一点,结果相同,这里有指针吗?
编辑:我将谷歌地图CocoaPod降级到版本1.12.3(从1.13.0),它现在按预期工作,任何人都可以指出为什么?我在文档中看不到任何不同的内容。
答案 0 :(得分:0)
我也有问题,但我已经解决了显示问题。
您需要使用markerInfoContent
代替markerInfoWindow
。
但是,我有新的sdk显示问题,我将继续使用1.12.3版本;)