2012-07-13 31 views
0

我試圖讓按鈕到底部的佈局,它只是不會工作... 該按鈕在圖像上顯示它自己應該高於它。我無法獲得佈局底部的按鈕

下面是XML代碼:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ScrollView01" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:fillViewport="true" 
    android:layout_gravity="center" 
    > 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="center" 
     > 

     <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:layout_marginLeft="28dp" 
      android:layout_marginTop="32dp" /> 

     <TextView 
      android:id="@+id/txtAppName" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignTop="@+id/imageView1" 
      android:layout_marginLeft="22dp" 
      android:layout_toRightOf="@+id/imageView1" 
      android:text="" 
      android:textSize="36px" 
      android:textStyle="bold" /> 

     <TextView 
      android:id="@+id/txtAppAuthor" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/txtAppName" 
      android:layout_below="@+id/txtAppName" 
      android:layout_marginTop="5px" 
      android:text="" 
      android:textSize="24px" 
      android:textStyle="normal" /> 


     <TextView 
      android:id="@+id/txtAppDesc" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/imageView1" 
      android:layout_below="@+id/imageView1" 
      android:layout_marginTop="20dp" 
      android:maxHeight="350px" 
      android:text="" 
      android:width="600px" 
      android:maxLines="10" 
      android:scrollbars = "vertical" 
      /> 

     <ImageView 
      android:id="@+id/imageView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/txtAppDesc" 
      android:layout_below="@+id/txtAppDesc" 
      android:layout_marginTop="30dp" /> 

     <ImageView 
      android:id="@+id/imageView3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignTop="@+id/imageView2" 
      android:layout_toRightOf="@+id/imageView2" /> 


     <ImageView 
      android:id="@+id/imageView4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignTop="@+id/imageView3" 
      android:layout_toRightOf="@+id/imageView3" 
      android:visibility="visible" /> 


     <Button 
      android:id="@+id/btnInstall" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:layout_centerHorizontal="true" 
      android:layout_alignBottom="@+id/imageview4" 
      android:text="Download &amp; Install" /> 

    </RelativeLayout> 
</ScrollView> 

,其結果是:

enter image description here

感謝名單的前期。

回答

2

您使用android:layout_alignBottom="@+id/imageview4"

這意味着你調整你的按鈕的底部與圖像的底部。

你必須使用android:layout_below="@+id/imageview4"

編輯:我不說這是最好的解決方案,因爲多個佈局(優化...),但是這應該工作:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/ScrollView01" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:fillViewport="true" 
      android:layout_gravity="center" 
     > 
    <LinearLayout android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:orientation="vertical"> 


     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:gravity="center" 
       > 

      <ImageView 
        android:id="@+id/imageView1" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentLeft="true" 
        android:layout_alignParentTop="true" 
        android:layout_marginLeft="28dp" 
        android:layout_marginTop="32dp"/> 

      <TextView 
        android:id="@+id/txtAppName" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignTop="@+id/imageView1" 
        android:layout_marginLeft="22dp" 
        android:layout_toRightOf="@+id/imageView1" 
        android:text="" 
        android:textSize="36px" 
        android:textStyle="bold"/> 

      <TextView 
        android:id="@+id/txtAppAuthor" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignLeft="@+id/txtAppName" 
        android:layout_below="@+id/txtAppName" 
        android:layout_marginTop="5px" 
        android:text="" 
        android:textSize="24px" 
        android:textStyle="normal"/> 


      <TextView 
        android:id="@+id/txtAppDesc" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignLeft="@+id/imageView1" 
        android:layout_below="@+id/imageView1" 
        android:layout_marginTop="20dp" 
        android:maxHeight="350px" 
        android:text="" 
        android:width="600px" 
        android:maxLines="10" 
        android:scrollbars="vertical" 
        /> 

      <ImageView 
        android:id="@+id/imageView2" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignLeft="@+id/txtAppDesc" 
        android:layout_below="@+id/txtAppDesc" 
        android:layout_marginTop="30dp"/> 

      <ImageView 
        android:id="@+id/imageView3" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignTop="@+id/imageView2" 
        android:layout_toRightOf="@+id/imageView2"/> 


      <ImageView 
        android:id="@+id/imageView4" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignTop="@+id/imageView3" 
        android:layout_toRightOf="@+id/imageView3" 
        android:visibility="visible"/> 

     </RelativeLayout> 


     <Button 
       android:id="@+id/btnInstall" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:text="Download &amp; Install"/> 
    </LinearLayout> 
</ScrollView> 

我添加了我放置內容的線性佈局和按鈕。 希望這會起作用。

+0

Thanx爲你提供幫助,但是 - 我現在試過,它仍然不起作用,結果是一樣的(我添加了截圖) – 2012-07-13 16:10:22

+0

刪除android:layout_alignParentBottom =「true」並使用android:layout_below = 「@ + ID/imageview4」。 – Scen 2012-07-13 16:11:54

+0

仍然不起作用,現在按鈕位於佈局的頂部,下面是截圖:http://img816.imageshack.us/img816/35/resultl.png – 2012-07-13 16:14:34

1

你只是想要按鈕結束縮小的圖像,以騰出空間嗎?如果是這樣,您需要將包含該圖像的Imageview作爲相對佈局中的最後一項。它將爲除圖像之外的所有內容分配空間,然後將剩餘空間分配給圖像,這就是爲什麼它需要最後一個。

此外,我建議給你的imageViews比「imageView#」更多的信息名稱,因爲它很難分辨哪個是哪個。

+0

老兄,我只是想要按鈕在佈局的底部... – 2012-07-13 16:20:25

+0

而且我說如果我無法將imageView分開,很難告訴您要更改哪些內容。 – Michael 2012-07-13 16:21:35

0

您可能想要將圖像包裹在Horizo​​ntalScrollView中以保持所有圖像的高度和寬度。我改變了很多ViewGroups'的寬度和高度,以適應Horizo​​ntalScrollView,終於被我設置的圖像下面的按鈕:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ScrollView01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:fillViewport="true" > 

    <RelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:gravity="center" > 

     <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:layout_marginLeft="28dp" 
      android:layout_marginTop="32dp" /> 

     <TextView 
      android:id="@+id/txtAppName" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignTop="@+id/imageView1" 
      android:layout_marginLeft="22dp" 
      android:layout_toRightOf="@+id/imageView1" 
      android:text="" 
      android:textSize="36px" 
      android:textStyle="bold" /> 

     <TextView 
      android:id="@+id/txtAppAuthor" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/txtAppName" 
      android:layout_below="@+id/txtAppName" 
      android:layout_marginTop="5px" 
      android:text="" 
      android:textSize="24px" 
      android:textStyle="normal" /> 

     <TextView 
      android:id="@+id/txtAppDesc" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/imageView1" 
      android:layout_below="@+id/imageView1" 
      android:layout_marginTop="20dp" 
      android:maxHeight="350px" 
      android:maxLines="10" 
      android:scrollbars="vertical" 
      android:text="" 
      android:width="600px" /> 

     <HorizontalScrollView 
      android:id="@+id/images" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/txtAppDesc" 
      android:layout_marginTop="30dp" > 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <ImageView 
        android:id="@+id/imageView2" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" /> 

       <ImageView 
        android:id="@+id/imageView3" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" /> 

       <ImageView 
        android:id="@+id/imageView4" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" /> 

      </LinearLayout> 
     </HorizontalScrollView> 

     <Button 
      android:id="@+id/btnInstall" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/images" 
      android:layout_centerHorizontal="true" 
      android:text="Download &amp; Install" /> 
    </RelativeLayout> 

</ScrollView> 

明白嵌套一個Horizo​​ntalScrollView滾動型內(或正相反)不會創建一個平穩在x方向上的滾動效果同時。但您可以按照此處所述創建此效果:Scrollview vertical and horizontal in android

相關問題