Реклама покрывает таблицу - PullRequest
2 голосов
/ 27 июня 2019

Я создал табличное представление с рекламным баннером AdMob внизу.Если у пользователя есть премиум, объявление не будет показано, используя код advertisementBanner.isHidden = true.

Проблема в том, что когда показывается реклама, я не могу прокрутить "до конца", так как она уже полностью прокручена вниз, но реклама покрывает область.

The image of the tableview

Как вы можете видеть, я не на дне, и я не могу прокрутить вниз больше, так как я уже на "дне".Итак, мой вопрос сейчас таков:

Есть ли способ сделать мой "свиток" еще длиннее?Или у вас есть другая альтернатива, которую я могу сделать, чтобы решить эту проблему?Спасибо.

Это код, который я сейчас использую:

//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"
}

Ответы [ 3 ]

0 голосов
/ 27 июня 2019

Благодаря @ manishsharma93 мне удалось решить мою проблему.

Вместо добавления @IBOutlet в Height, я добавил его в нижнее ограничение.

@IBOutlet weak var topConstraint: NSLayoutConstraint!

И оттуда я добавил ограничение для изменения расстояния между таблицей и навигационным контроллером, например:

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.

0 голосов
/ 27 июня 2019

В вашем storyboard создайте вид высоты 200 и отрегулируйте его внизу экрана. Установите Tableview выше. Теперь загрузите Admob Ad внутри вашего вида снизу. Затем создайте выход для его ограничения высоты для вашего файла swift. как

@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;
}
0 голосов
/ 27 июня 2019

Вы можете переместить свой adView в tableViews footerView.

func adView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: GADRequestError)
{
    tableView.tableFooterView = bannerView
}
func adViewDidReceiveAd(_ bannerView: GADBannerView)
{
    tableView.tableFooterView = nil
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...