2013-06-12 105 views
0

在android和java上很新穎。如何在android中修復該佈局

這是一個簡單的問題給你。

我的申請很簡單。 我有一個圖片展示給用戶的圖像。 當他點擊圖片時,正在加載一個新圖片。 我有和底部的admob。

但是我不能根據需要定位它們。 目前admob沒有顯示並返回錯誤,沒有足夠的空間寬度。 我想要適合屏幕從頭到尾的圖像。 目前圖像的邊緣都是黑色的大邊框。

Here`s我的活動:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#000000" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context=".MainActivity" xmlns:app="http://schemas.android.com/apk/lib/com.google.ads"> 

<com.loopj.android.image.SmartImageView 
    android:id="@+id/image_switcher" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

<com.google.ads.AdView 
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
    android:id="@+id/ad" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    app:adSize="SMART_BANNER" 
    app:adUnitId="738a44d913034b9f" > 

</com.google.ads.AdView> 

+0

我需要在圖像上的admob,而不是在它們下面。 我剛剛從相關佈局中刪除了填充,現在可以了。 但是,admob只顯示在模擬器上,而不是在真實設備上工作。 –

回答

0

你有SmartImageView設置爲match_parent,不留下餘地AdView

<com.loopj.android.image.SmartImageView 
android:id="@+id/image_switcher" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" /> 
1

更改爲SmartImageView的高度0dp的高度和layout_weight =「1」。此視圖將佔用所有可用的位置,並讓廣告請求擁有自己的高度。

+0

爲什麼有人投我的答案? –

0

如果你想要的ImageView採取一切可用的空間,在廣告中使用此代碼:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#000000" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".MainActivity" xmlns:app="http://schemas.android.com/apk/lib/com.google.ads"> 

    <com.loopj.android.image.SmartImageView 
     android:id="@+id/image_switcher" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_above="@+id/ad" /> 

    <com.google.ads.AdView 
     xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
     android:id="@+id/ad" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     app:adSize="SMART_BANNER" 
     app:adUnitId="738a44d913034b9f" > 

    </com.google.ads.AdView> 
</RelativeLayout 

這樣你的ImageView永遠是上面的廣告。

如果您想使用Stephane的解決方案,您需要將您的RelativeLayout更改爲LinearLayout。