GMSMarker infoWindow不会显示和冻结应用程序

时间:2016-04-29 10:34:21

标签: ios objective-c iphone cocoa-touch google-maps-sdk-ios

我尝试从xib文件加载UIView作为我的GMSMarker信息窗口。我试图这样做:

-(UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker
{
    //Creating "infoWindow"(infoWindow) and setting it with nib file called "infoWindow"
    CustomMarkerInfoWindow *infoWindow=[[[NSBundle mainBundle] loadNibNamed:@"CustomMarkerInfoWindow" owner:self options:nil] firstObject];

    //Setting "infoWindow"(infoWindow)'s storeNameLabel's text to "marker"(customMarker)'s title
    infoWindow.storeNameLabel.text=((customMarker*)marker).title;

    //Setting "infoWindow"(infoWindow)'s storeAddressLabel's text to marker's address
    infoWindow.storeAddressLabel.text=((customMarker*)marker).address;

    return infoWindow;
}

但是当我点击一个标记时,信息窗口没有显示并且所有应用程序都冻结了(为了再次开始使用它,我需要在多任务处理后将其重新打开)。

注意:如果我这样做,它一切正常(创建常规UIView):

-(UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker
{
    UIView *myView=[[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
    myView.backgroundColor=[UIColor blueColor];

    return myView;
}

任何人都知道为什么会这样吗?一个多星期我无法理解它!

如果有人能在这里帮助我,我真的很高兴,非常感谢你!

1 个答案:

答案 0 :(得分:0)

这是iOS app freezes when loading custom info window for marker on Google Maps

的副本

这是Google Maps版本1.13.0错误。 将您的Google Maps SDK降级为1.12.3,一切正常。