Баннер AdMob внизу - Преобразование Linearlayout в RelativeLayout
Я довольно новичок в Android. Я пытаюсь добавить баннер AdMob в нижней части приложения, на самом деле в двух действиях. Я думаю, что Linearlayout не правильный способ сделать это.
- Поэтому, пожалуйста, помогите мне конвертировать Linearlayout в RelativeLayout.
Кроме того, во время работы приложения отображается только файл activity_entry.xml sample-google-banner. Баннер view_home.xml просто показывает статическое пустое пространство.
- А как мне сделать баннер умным? Я хочу, чтобы он отображался только тогда, когда будет отображаться баннер, а не как статическое пустое пространство.
activity_entry.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/view_toolbar"/>
<fragment
android:id="@+id/entry_fragment"
class="net.etuldan.sparss.fragment.EntryFragment"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="SMART_BANNER"
ads:adUnitId="ca-app-pub-3940256099942544/6300978111"
android:layout_gravity="center_horizontal">
</com.google.android.gms.ads.AdView>
view_home.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:showIn="@layout/activity_home"
android:weightSum="1">
<include layout="@layout/view_toolbar"/>
<fragment
android:id="@+id/entries_list_fragment"
android:name="net.etuldan.sparss.fragment.EntriesListFragment"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="SMART_BANNER"
ads:adUnitId="ca-app-pub-3940256099942544/6300978111"
android:layout_gravity="center_horizontal">
</com.google.android.gms.ads.AdView>
1 ответ
Вот несколько советов, как получить то, что вы хотите:
Посмотрите здесь, чтобы сделать это в относительной разметке: adMob | Умный баннер внизу?
в основном, ключевой код в том, что вы должны иметь
android:layout_alignParentBottom="true"
Вы можете вложить свой макет, если он помогает... или нет.
Вторая часть: рассмотрите возможность использования adListener и использования onReceiveAd() и onFailedToReceiveAd() для динамического форматирования макета.
Посмотрите здесь некоторые моменты на adListener: