2011-11-23 9 views
0

もう一度私はいくつかの助けが必要です。試行錯誤がうまくいきません。誰かが私のコードを見てくださいできますか?私はリストビューにページの上部にadmob広告を入れることを望み、今朝少し苦労しています。前もって感謝します!Admob to Listview:Androidのレイアウト

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:padding="5dp" 
    > 

    <com.google.ads.AdView 
      android:id="@+id/adView" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      ads:adSize="BANNER" 
      ads:adUnitId="xxxxxxxxxxxxxxx" 
      ads:loadAdOnCreate="true" 
      android:layout_alignParentTop="true" /> 

    <TextView 
     android:id="@+id/txtPlaceName" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="left" 
     android:ellipsize="end" 
     android:singleLine="true" 
     android:text="saa" 
     android:textSize="25sp" 
     android:layout_below="@id/adView" /> 

    <LinearLayout 
     android:id="@+id/layout" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <ImageView 
      android:id="@+id/imgType" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/marker1" /> 

     <LinearLayout 

      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" > 

      <RelativeLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <TextView 
        android:id="@+id/txtCityState" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="city, st" 
        android:textSize="15sp" /> 

       <TextView 
        android:id="@+id/txtDistance" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentRight="true" 
        android:textSize="15sp" /> 
      </RelativeLayout> 

      <RelativeLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <RatingBar 
        android:id="@+id/average_ratingbar" 
        style="?android:attr/ratingBarStyleSmall" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentLeft="true" 
        android:numStars="5" 
        android:stepSize="1.0" /> 

       <TextView 
        android:id="@+id/txtCommentsCount" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentRight="true" 
        android:textSize="15sp" /> 
      </RelativeLayout> 
     </LinearLayout> 
    </LinearLayout> 



</LinearLayout> 

答えて

1

短い答え

バナー広告は、320dpの幅を必要とします。あなたのベースLinearLayoutはandroid:padding="5dp"なので、310dpしか残っていないので、広告は画面に表示されません。将来

Android用

がログに記録されたすべてのメッセージを追跡しますLogCatと呼ばれるログツールを持っています。 AdMob SDKでは、これらの問題をデバッグする際に役立つロギングメッセージが提供されます。これがあなたの問題を解決する方法でした。

上記のリンクからの指示に従ってコマンドラインを使用してLogCatの出力を表示したり、Window -> Show View -> LogCatに移動してLogCatの出力をEclipseで表示することができます。あなたが完全な320の幅を持っていなかったことを言うのはとても簡単でした。そこから

Not enough space to show the ad! Wants: <320,50>, Has: <310,473> 

、そしてあなたのトップレベルのレイアウトがそれぞれに5DPパディングを持っていた十分な確認:広告を要求する場合、SDKには、次のメッセージをログに記録しました側。

無関係なレイアウトのヒントFYI

android:layout_alignParentTopandroid:layout_below属性はRelativeLayoutの内部で何でもします。上記で用意したレイアウトでは、AdViewとTextViewのこれらの属性は何もしません。