底部的AdMob横幅 - 将Linearlayout转换为RelativeLayout

时间:2015-06-30 15:28:33

标签: android xml android-layout admob adbannerview

我对android很新。我试图在应用程序的底部添加一个admob横幅,实际上是在两个活动中。我认为Linearlayout不是正确的做法。

  1. 所以请帮我转换Linearlayout到RelativeLayout。
  2. 同时在运行应用程序时,只显示activity_entry.xml sample-google-banner。 view_home.xml横幅只显示静态空白区域。

    1. 如何制作横幅智能?我的意思是我希望它只在有一个要显示的横幅时出现,而不是作为一个静态的空白区域。
    2. 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 个答案:

答案 0 :(得分:0)

以下是获得所需内容的一些提示:

看这里将其变成relativelayout:adMob | Smart banner at bottom?

基本上,关键代码是你应该

android:layout_alignParentBottom="true"

如果布局有帮助,您可以嵌套布局。

第二部分:考虑使用adListener并使用onReceiveAd()和onFailedToReceiveAd()动态格式化您的布局。

在这里查看adListener上的一些要点:

How to know if AdMob ad has been loaded