Отображение баннера Admob в нижней части устройства IOS

#c #ios #xcode #cocos2d-x

#c #iOS #xcode #cocos2d-x

Вопрос:

Я разрабатываю приложение в Xcode с использованием cocos2dx.В моем приложении я хочу, чтобы мой баннер admob отображался в нижней части экрана, для этого я использую следующий код. Он перемещает содержимое игры наверх и отображает баннер внизу. Но я хочу, чтобы баннер был внизу без перемещения содержимого. Баннер отображается в верхней части без перемещения содержимого. пожалуйста, посоветуйте мне исправить мою ошибку.

 - (void)viewDidLayoutSubviews
{
CGRect contentFrame = self.view.bounds;
CGRect bannerFrame = CGRectZero;
#if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_6_0
bannerFrame = _bannerView.frame;
#else
bannerFrame.size = [_bannerView sizeThatFits:contentFrame.size];
#endif

bannerFrame.origin.x = (contentFrame.size.width - bannerFrame.size.width) / 2;

////To display the banner in Bottom

if (_bannerLoaded) {
    contentFrame.size.height -= bannerFrame.size.height;
    bannerFrame.origin.y = contentFrame.size.height;
} else {
    bannerFrame.origin.y = contentFrame.size.height;
}


////To display the banner in top

//    if (_bannerLoaded) {
//        bannerFrame.origin.y = 0;
//    } else {
//        bannerFrame.origin.y = -bannerFrame.size.height;
//    }

_contentController.view.frame = contentFrame;
_bannerView.frame = bannerFrame;
}
 

Комментарии:

1. bannerFrame.origin.y = contentFrame.size.height -Баннер.размер.высота;

2. Большое вам спасибо, он работает нормально.

Ответ №1:

В приведенном выше коде внесите некоторые изменения в условие if следующим образом.

 if (_bannerLoaded)
{
contentFrame.size.height = 0;
bannerFrame.origin.y = contentFrame.size.height-bannerFrame.size.height;
} 
else 
{
bannerFrame.origin.y = contentFrame.size.height-bannerFrame.size.height;
}