Intereting Posts
Android 4.4 Случайная авария KitKat Разницу во времени с строкой вроде «Минута назад» или «Час назад» на Android Что такое кинжал, и как он работает Поиск в YouTube HTML5 видео по Android WebView Проверьте, может ли прокрутка просмотра Android Выбор устройства для Android – мое устройство кажется офлайн Android: конвертирование между строками, SpannedStrings и Spannablestrings Android adb нажимает на место в устройстве без SD-карты и без доступа root Как получить статистику сетевого трафика для приложений потоковой передачи видео на Android? Динамический массив Android Файлы расширения Apk – Лицензирование приложений – Учетная запись разработчика – NOT_LICENSED ответ Как можно подсчитать количество сообщений, помещенных в очередь в обработчике? Как избежать отображения перекрытия в относительной компоновке в android? GetChildFragmentManager вызывает исключение NoSuchMethod на устройстве 4.0.3, но не 4.2.2 Почему мой Delphi TCanvas.DrawLine не появляется при работе на Android

Как разместить объявления admob над представлением LibGDX

Я читал много учебников, таких как этот:

https://github.com/libgdx/libgdx/wiki/Admob-in-libgdx

Однако я не могу, по-видимому, обвести голову. Все они используют рекламу, которая перекрывает представление игры, и я предпочел бы, чтобы она пошла выше, и мой игровой обзор просто свалился. Как я могу это сделать? Я попытался использовать Linear Layout, но это, похоже, не работает

Это мой метод onCreate ()

@Override public void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Create the layout RelativeLayout layout = new RelativeLayout(this); // Do the stuff that initialize() would do for you requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); // Create the libgdx View View gameView = initializeForView(new HelloWorld(), false); // Create and setup the AdMob view AdView adView = new AdView(this, AdSize.BANNER, "xxxxxxxx"); // Put in your secret key here adView.loadAd(new AdRequest()); // Add the libgdx view layout.addView(gameView); // Add the AdMob view RelativeLayout.LayoutParams adParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); adParams.addRule(RelativeLayout.ALIGN_PARENT_TOP); adParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); layout.addView(adView, adParams); // Hook it all up setContentView(layout); } 

Как указано здесь , вы можете установить маржу к своему игровому виду, что очень хорошо работает:

  RelativeLayout layout = new RelativeLayout(this); RelativeLayout.LayoutParams gameViewParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); gameViewParams.bottomMargin = 150; View gameView = initializeForView(new MainGame(), cfg); layout.addView(gameView, gameViewParams); AdView adView = new AdView(this); adView.setAdUnitId("app-id"); adView.setAdSize(AdSize.BANNER); RelativeLayout.LayoutParams adParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); adParams.addRule(RelativeLayout.ALIGN_PARENT_LEFT); adParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); layout.addView(adView, adParams); AdRequest adRequest = new AdRequest.Builder().build(); adView.loadAd(adRequest); setContentView(layout); 

Используя это, adView находится ниже игрового поля, но я думаю, вы можете поместить marginTop и иметь свой игровой режим под adView.

Вот как я справился с той же проблемой. Идея заключается в том, чтобы сначала установить AdView а затем поставить gameView под AdView в макете.

 @Override public void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Create the layout RelativeLayout layout = new RelativeLayout(this); // Do the stuff that initialize() would do for you requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); // Create the libgdx View View gameView = initializeForView(new HelloWorld(), false); // Create and setup the AdMob view AdView adView = new AdView(this, AdSize.BANNER, "xxxxxxxx"); // Put in your secret key here adView.loadAd(new AdRequest()); // Add the AdMob view RelativeLayout.LayoutParams adParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); adParams.addRule(RelativeLayout.ALIGN_PARENT_TOP); adParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); //define in resource xml: <item type="id" name="adViewId"/> adView.setId(R.id.adViewId); layout.addView(adView, adParams); RelativeLayout.LayoutParams gameParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); gameParams.addRule(RelativeLayout.BELOW, adView.getId()); // Add the libgdx view layout.addView(gameView, gameParams); // Hook it all up setContentView(layout); }