2014-01-19 28 views
0

我正在一個Android應用程序,我正在做一個佈局,它有一系列的edittexts,還包含admob提供的廣告。定位的東西在底部,但alignParentBottom = true沒有任何效果

對於廣告,我希望它固定到屏幕的底部,但是,它保持漂浮在中間,正好位於主內容的底部下方。

在admob adview上,我放了alignParentBottom=true,但它似乎沒有奏效。

下面是XML的副本

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:ads="http://schemas.android.com/apk/res-auto" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/relativeLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 
    <EditText android:id="@+id/newDB_txtConnectionName" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Database Connection Name" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions" /> 
    <EditText android:id="@+id/newDB_txtServer" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Server" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions" /> 
    <EditText android:id="@+id/newDB_txtUsername" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Username" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions" /> 
    <EditText android:id="@+id/newDB_txtPassword" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Password" 
     android:password="true" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions" /> 
    <EditText android:id="@+id/newDB_txtDatabase" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Database" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions" /> 
    <EditText android:id="@+id/newDB_txtPort" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:maxLength="4" 
     android:hint="Port" 
     android:text="3306" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions"/> 
    <TextView 
     android:layout_marginTop="10dp" 
     android:layout_margin="10dp" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:gravity="center_horizontal" 
     android:layout_gravity="center_horizontal" 
     android:text="Leave database blank to connect to any database on this server" /> 
    <LinearLayout android:id="@+id/buttonContainer" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     style="?android:attr/buttonBarStyle" 
     android:layout_alignParentBottom="true"> 
     <Button android:id="@+id/newDB_btnTest" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="Test Connection" 
      style="?android:attr/buttonBarButtonStyle" /> 
     <Button android:id="@+id/newDB_btnCreate" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="Create" 
      android:enabled="false" 
      style="?android:attr/buttonBarButtonStyle" /> 
    </LinearLayout> 
     <com.google.android.gms.ads.AdView android:id="@+id/adView" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      ads:adUnitId="MY_PUBLISHER_ID" 
      ads:adSize="BANNER" 
      android:layout_alignParentBottom="true"/> 
</LinearLayout> 
</ScrollView> 

感謝您的幫助,您可以提供。

回答

1

alignParentBottom不在的LinearLayout有效,使用RelativeLayout的,如果你想使用該標誌

+0

謝謝你,當我改變的LinearLayout到RelativeLayout的,一切蕉在屏幕的頂部,一切都在屏幕的頂部相互重疊 – Boardy

+0

好了,你可以替換的android:layout_alignParentBottom =「真「with android:layout_gravity =」bottom「,那麼不需要更改爲RelativeLayout – spezzino

+0

仍然沒有運氣,仍然漂浮在主GUI下方,而不是屏幕底部 – Boardy

0

如果你想使用的LinearLayout,那麼你需要的東西電話擴大,以填補未使用的空間。您可以通過提供您想要展開的物品layout_weight =「1」。例如

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:ads="http://schemas.android.com/apk/res-auto" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/relativeLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 
    <EditText android:id="@+id/newDB_txtConnectionName" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="Database Connection Name" 
     android:singleLine="true" 
     android:inputType="textNoSuggestions" /> 
    < lots more EditTexts /> 
    <LinearLayout android:id="@+id/buttonContainer" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     style="?android:attr/buttonBarStyle" 
     **android:layout_weight="1"**> 
     <Some Buttons/> 
    </LinearLayout> 
     <com.google.android.gms.ads.AdView android:id="@+id/adView" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      ads:adUnitId="MY_PUBLISHER_ID" 
      ads:adSize="BANNER" 
</LinearLayout> 
</ScrollView> 
+0

謝謝,但不幸的是沒有任何區別 – Boardy

+0

對不起,我錯過了** layout_gravity =「center」**的AdView事實。也刪除。 – William

+0

謝謝,廣告位於底部,但由於按鈕容器正在填充未使用的空間,因此按鈕分隔符的垂直線也會位於底部,看起來有點麻煩。我想按鈕容器只是按鈕的高度 – Boardy