在listView中添加AdMobs广告

时间:2012-01-04 21:14:46

标签: java android admob

我想在我的应用中添加AdMobs广告,但我不知道如何添加它们。

我的主要活动在我的main.xml上调用setContentView,但我的main.xml只包含一个ListView

<ListView
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/listView"
  android:layout_width="match_parent" 
  android:layout_height="wrap_content"
  android:drawSelectorOnTop="true"
  />

将广告视图添加到布局

<ListView
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:myapp="http://schemas.android.com/apk/res/com.t3hh4xx0r.romcrawler"
  android:id="@+id/listView"
  android:layout_width="match_parent" 
  android:layout_height="wrap_content"
  android:drawSelectorOnTop="true" >

  <com.google.ads.AdView 
    android:id="@+id/ad"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    myapp:backgroundColor="#000000" 
    myapp:primaryTextColor="#FFFFFF" 
    myapp:secondaryTextColor="#CCCCCC" />
  </ListView>

当然会导致强制关闭,因为listViews不允许有子布局。

最好的解决方法是什么?在java中创建广告视图?如果是这样,你能提供一些我将如何创建它的示例代码吗?

提前谢谢!

1 个答案:

答案 0 :(得分:1)

创建一个这样的布局:这样广告就会显示在底部。通过将weightSum设置为1,然后将listview的权重设为1,将占用创建广告后剩下的所有空间。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1" >

    <ListView
    android:id="@android:id/list"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:background="#E4E9F5"
    android:cacheColorHint="#00000000" />

    <com.google.ads.AdView
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:id="@+id/adView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    ads:adSize="BANNER"
    ads:adUnitId="your_adunitid_here"
    ads:loadAdOnCreate="true" />

</LinearLayout>