当将自定义UIView作为标记信息窗口(Google Maps iOS SDK)返回时,应用程序将被冻结

当将自定义UIView作为标记信息窗口(Google Maps iOS SDK)返回时,应用程序将被冻结,ios,objective-c,iphone,cocoa-touch,google-maps-sdk-ios,Ios,Objective C,Iphone,Cocoa Touch,Google Maps Sdk Ios,我有一个自定义的UIView(带有xib、.h和.m文件),我希望它成为我的GMSMarker信息窗口。但是当我在-mapView:markerInfoWindow:方法中返回我的自定义UIView时,应用程序就被冻结和卡住了(甚至没有崩溃) 我的代码是: -(UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker { //Creating "infoWindow"(infoWindow) a

我有一个自定义的
UIView
(带有
xib
.h
.m
文件),我希望它成为我的
GMSMarker
信息窗口。但是当我在
-mapView:markerInfoWindow:
方法中返回我的自定义
UIView
时,应用程序就被冻结和卡住了(甚至没有崩溃)

我的代码是:

-(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] lastObject];

    //Returning "infoWindow"(infoWindow)
    return infoWindow;
}
我不知道为什么它会冻结,我确信这段代码在过去是有效的,所以我不明白是什么错了

有人能帮我吗


谢谢大家!

将此方法放入自定义视图实现文件中

-(void)didMoveToSuperview{
    self.superview.autoresizesSubviews = NO;
}

将此方法放在自定义视图实现文件中

-(void)didMoveToSuperview{
    self.superview.autoresizesSubviews = NO;
}

在创建
CustomMarkerInfoWindow
对象的位置,应用程序是否冻结?不管怎样,运行代码,当它冻结时,在调试器中暂停应用程序并查看堆栈跟踪。你将能够准确地看到发生了什么stuck@laynemoseley不,当我返回对象时,它会冻结,这真的很奇怪,因为如果我创建另一个
UIView
(例如:
TestView
)它就会工作fine@laynemoseley“我怎么才能找到这个堆栈跟踪?”laynemoseley我想我找到了,它在线程23结束时崩溃:signal SIGBART应用程序是否在创建
CustomMarkerInfoWindow
对象的位置冻结?无论如何,运行代码,当它冻结时,在调试器中暂停应用程序并查看堆栈跟踪。你将能够准确地看到发生了什么stuck@laynemoseley不,当我返回对象时,它会冻结,这真的很奇怪,因为如果我创建另一个
UIView
(例如:
TestView
)它就会工作fine@laynemoseley“我怎么才能找到这个堆栈跟踪?”laynemoseley我想我找到了,它在线程23:signal SIGBART的末尾崩溃