【发布时间】:2012-04-26 00:11:25
【问题描述】:
这段代码泄露了:
self.adView = ADBannerView* tempAddBannerView = [[ADBannerView alloc] initWithFrame:CGRectZero];
self.adView.frame = CGRectOffset(adView.frame, 0, 416);
self.adView.requiredContentSizeIdentifiers = [NSSet setWithObject:ADBannerContentSizeIdentifier320x50];
self.adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50;
[self.view addSubview:adView];
self.adView.delegate = self;
self.bannerIsVisible = NO;
显然是因为 adView 从未被释放。哪里是最好的发布地点?
我修复它的尝试崩溃了:
ADBannerView* tempAddBannerView = [[ADBannerView alloc] initWithFrame:CGRectZero];
tempAddBannerView.frame = CGRectOffset(adView.frame, 0, 416);
tempAddBannerView.requiredContentSizeIdentifiers = [NSSet setWithObject:ADBannerContentSizeIdentifier320x50];
tempAddBannerView.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50;
self.adView = tempAddBannerView;
[tempAddBannerView release];
[self.view addSubview:adView];
self.adView.delegate = self;
self.bannerIsVisible = NO;
【问题讨论】:
标签: iphone objective-c memory-leaks iad