繁体   English   中英

广告覆盖了表格视图

[英]Advertisement is covering tableview

我创建了一个表格视图,其底部有一个AdMob广告横幅。 如果用户付费,则不会使用代码advertisementBanner.isHidden = true展示advertisementBanner.isHidden = true

问题是当显示广告时,我无法一直滚动到底部,因为它已经一直向下滚动,但是广告覆盖了该区域。

表格视图的图像

如您所见,我不在最底部,而且由于已经位于“底部”,因此无法向下滚动。 所以我的问题是:

有什么办法可以使我的“滚动”时间更长? 或者,您还有其他解决方法可以解决吗? 谢谢。

这是我目前的代码:

//If no advertisement is shown.
func adView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: GADRequestError)
{
    advertisementBanner.isHidden = true
}
func adViewDidReceiveAd(_ bannerView: GADBannerView)
{
    //What should I insert here to "make tableview even longer"
}

您可以将adView移到tableViews footerView。

func adView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: GADRequestError)
{
    tableView.tableFooterView = bannerView
}
func adViewDidReceiveAd(_ bannerView: GADBannerView)
{
    tableView.tableFooterView = nil
}

感谢@ manishsharma93,我设法解决了我的问题。

我没有将@IBOutlet添加到Height中,而是将其添加到了底部约束中。

@IBOutlet weak var topConstraint: NSLayoutConstraint!

然后从那里添加一个约束,以更改tableview和Navigationcontroller之间的空间,如下所示:

func adView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: GADRequestError)
{
    advertisementBanner.isHidden = true //Hiding the ad banner
    topConstraint.constant = 0 //Adding 0 constraint from bottom to tableview

    tableView.layoutIfNeeded()
    tableView.updateConstraints()
}

然后,如果广告成功部署,我就会得到以下信息:

func adViewDidReceiveAd(_ bannerView: GADBannerView)
{
    topConstraint.constant = 100 //Adding 100 "constraints" to bottom

    tableView.layoutIfNeeded()
    tableView.updateConstraints()
}

我添加了“ 100”,因为广告横幅的高度是100。

storyboard创建一个高度为200的视图,并在屏幕底部进行调整。 将您的Tableview设置为其上方。 现在,在底部视图中加载Admob Ad 然后为它的swift文件创建一个针对其Height约束的出口。 喜欢

@IBOutlet var adViewHeight: NSLayoutConstraint!

现在如下调整您的逻辑

if (showAd) // depending on your location
{
     adView.isHidden = false;
     adViewHeight.constant = 200;
}  
else { // hide ad
     adView.isHidden = true;
     adViewHeight.constant = 0;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM