根据BannerView的高度设置UITableView的高度



我在我的应用程序中使用adBanner,它位于屏幕底部,我在我的应用程序中使用tableview

我建立了adBannerView和tableview之间的"水平间距"关系。现在我的问题是在adBannerView中加载广告之前,我可以看到屏幕底部的空白,但我希望我的tableview在加载adBannerView之前覆盖该空间,当adBannerView加载时,我的tableview应该向上移动50像素。我怎样才能做到这一点呢?

任何想法?

我想,你有一个高度为50像素的adBanner。设置tableview的底部空间为adBanner 0,不设置高度。然后为adBanner设置高度并创建它的约束属性初始值应该是0这样tableview就会使用那个空间。当adBannerView被加载时,设置adBannerView的高度属性为50,这样tableview就会自动上移。

设置tableview的底部空间为supreview0,并带有顶部空间、前导空间和尾随空间约束。像这样修改adbanner委托它会给出需要的输出。IN viewDidLoad Adbanner view alpha = 0.0

-(void)bannerViewDidLoadAd:(ADBannerView *)banner{
NSLog(@"Ad Banner did load ad.");
CGFloat height = [UIScreen mainScreen].bounds.size.height;
CGRect frame = self.viewForSource.frame;
frame.size.height = height-50;
self.viewForSource.frame = frame;
// Show the ad banner.
[UIView animateWithDuration:0.5 animations:^{
    self.adBanner.alpha = 1.0;
}];

}

-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{
NSLog(@"Unable to show ads. Error: %@", [error localizedDescription]);
CGFloat height = [UIScreen mainScreen].bounds.size.height;
CGRect frame = self.viewForSource.frame;
frame.size.height = height;
self.viewForSource.frame = frame;
// Hide the ad banner.
[UIView animateWithDuration:0.5 animations:^{
    self.adBanner.alpha = 0.0;
}];

}

最新更新