2013-03-01 136 views
0

我正在處理我的第一個Android應用程序和一個問題,我一直無法找到解決方案是相對佈局和頁腳欄。問題與相對佈局

我已經在底部設置了一個按鈕欄的相對佈局。它可以發現其他線性佈局中是否有足夠的內容;但是,當沒有足夠的內容填充頁面時,內容將對齊按鈕欄頂部的底部。我希望它在頂部與底部留下的按鈕欄對齊。我已經嘗試了每個對齊頂部選項,我可以找到並將內容高度設置爲fill_parent/match_parent,但所有這些都會導致線性佈局內的項目消失。

我該如何解決這個問題?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ViewPost" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#c9c9c9" > 

    <LinearLayout 
    android:id="@+id/bottom_control_bar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" > 
    <Button 
     android:id="@+id/btnComment" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1.0" 
     android:drawableLeft="@drawable/content_new_event" 
     android:paddingBottom="2dip" 
     android:paddingLeft="8dip" 
     android:paddingRight="8dip" 
     android:paddingTop="2dip" 
     android:text="@string/BtnComment" 
     android:textColor="#797979" 
     android:textSize="14sp" /> 

    <Button 
     android:id="@+id/btnMeToo" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1.0" 
     android:drawableLeft="@drawable/social_add_group" 
     android:paddingBottom="2dip" 
     android:paddingLeft="8dip" 
     android:paddingRight="8dip" 
     android:paddingTop="2dip" 
     android:text="@string/BtnMeToo" 
     android:textColor="#797979" 
     android:textSize="14sp" /> 

    <Button 
     android:id="@+id/btnFlag" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1.0" 
     android:drawableLeft="@drawable/flag" 
     android:paddingBottom="2dip" 
     android:paddingLeft="8dip" 
     android:paddingRight="8dip" 
     android:paddingTop="2dip" 
     android:text="@string/BtnFlag" 
     android:textColor="#797979" 
     android:textSize="14sp" /> 

    <Button 
     android:id="@+id/btnShare" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1.0" 
     android:drawableLeft="@drawable/social_share" 
     android:paddingBottom="2dip" 
     android:paddingLeft="8dip" 
     android:paddingRight="8dip" 
     android:paddingTop="2dip" 
     android:text="@string/BtnShare" 
     android:textColor="#797979" 
     android:textSize="14sp" /> 
    </LinearLayout> 

    <LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@id/bottom_control_bar" 
    android:layout_marginBottom="5dip" 
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="10dip" 
    android:layout_marginTop="10dip" 
    android:background="#ffffff" 
    android:gravity="top" 
    android:orientation="vertical" 
    android:weightSum="1.0" > 

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

     <TextView 
     android:id="@+id/ticket_id" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:visibility="gone" /> 

     <ImageView 
     android:id="@+id/ticket_owner_image2" 
     android:layout_width="50dp" 
     android:layout_height="50dp" 
     android:layout_marginLeft="1dp" 
     android:layout_marginTop="1dp" 
     android:background="#797979" 
     android:contentDescription="@string/StdImageDesc" 
     android:padding="1dp" 
     android:scaleType="fitXY" 
     android:src="@drawable/picture" /> 

     <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" > 

     <TextView 
      android:id="@+id/ticket_owner_name" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="10dip" 
      android:layout_marginTop="5dip" 
      android:paddingLeft="5dip" 
      android:textColor="#595959" 
      android:textSize="10sp" /> 

     <TextView 
      android:id="@+id/ticket_title" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="10dip" 
      android:layout_marginTop="2dip" 
      android:paddingLeft="5dip" 
      android:textColor="#595959" 
      android:textSize="14sp" /> 

     <TextView 
      android:id="@+id/ticket_create_date" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="10dip" 
      android:layout_marginTop="2dip" 
      android:paddingLeft="5dip" 
      android:textColor="#595959" 
      android:textSize="10sp" /> 
     </LinearLayout> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_gravity="center" > 

     <TextView 
     android:id="@+id/ticket_text" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal|center_vertical" 
     android:layout_margin="5dip" 
     android:textColor="#595959" 
     android:textSize="14sp" /> 
    </LinearLayout> 

    <ListView 
     android:id="@+id/commentlist" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:cacheColorHint="#00000000" 
     android:divider="#b5b5b5" 
     android:dividerHeight="1dp" /> 
    </LinearLayout> 

</RelativeLayout> 

回答

1

嘗試以下方法,讓我知道,如果這你想要達到的目標:

<?xml version="1.0" encoding="utf-8"?> 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/ViewPost" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#c9c9c9" > 

     <ListView 
      android:id="@+id/commentlist" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:cacheColorHint="#00000000" 
      android:layout_below="@+id/linear1" 
      android:layout_above="@+id/bottom_control_bar" 
      android:divider="#b5b5b5" 
      android:dividerHeight="1dp" /> 

     <LinearLayout 
      android:id="@+id/bottom_control_bar" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" > 

      <Button 
       android:id="@+id/btnComment" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1.0" 
       android:drawableLeft="@drawable/dummy_heyzooka_icon_blue" 
       android:paddingBottom="2dip" 
       android:paddingLeft="8dip" 
       android:paddingRight="8dip" 
       android:paddingTop="2dip" 
       android:text="aa" 
       android:textColor="#797979" 
       android:textSize="14sp" /> 

      <Button 
       android:id="@+id/btnMeToo" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1.0" 
       android:drawableLeft="@drawable/dummy_heyzooka_icon_blue" 
       android:paddingBottom="2dip" 
       android:paddingLeft="8dip" 
       android:paddingRight="8dip" 
       android:paddingTop="2dip" 
       android:text="dd" 
       android:textColor="#797979" 
       android:textSize="14sp" /> 

      <Button 
       android:id="@+id/btnFlag" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1.0" 
       android:drawableLeft="@drawable/dummy_heyzooka_icon_blue" 
       android:paddingBottom="2dip" 
       android:paddingLeft="8dip" 
       android:paddingRight="8dip" 
       android:paddingTop="2dip" 
       android:text="ff" 
       android:textColor="#797979" 
       android:textSize="14sp" /> 

      <Button 
       android:id="@+id/btnShare" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1.0" 
       android:drawableLeft="@drawable/dummy_heyzooka_icon_blue" 
       android:paddingBottom="2dip" 
       android:paddingLeft="8dip" 
       android:paddingRight="8dip" 
       android:paddingTop="2dip" 
       android:text="ff" 
       android:textColor="#797979" 
       android:textSize="14sp" /> 
     </LinearLayout> 

     <LinearLayout 
      android:id="@+id/linear1" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_marginBottom="5dip" 
      android:layout_marginLeft="10dip" 
      android:layout_marginRight="10dip" 
      android:layout_marginTop="10dip" 
      android:background="#ffffff" 
      android:gravity="top" 
      android:orientation="vertical" 
      android:weightSum="1.0" > 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_gravity="top" 
       android:orientation="horizontal" > 

       <TextView 
        android:id="@+id/ticket_id" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:visibility="gone" /> 

       <ImageView 
        android:id="@+id/ticket_owner_image2" 
        android:layout_width="50dp" 
        android:layout_height="50dp" 
        android:layout_marginLeft="1dp" 
        android:layout_marginTop="1dp" 
        android:background="#797979" 
        android:contentDescription="ada" 
        android:padding="1dp" 
        android:scaleType="fitXY" 
        android:src="@drawable/dummy_heyzooka_icon_blue" /> 

       <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:orientation="vertical" > 

        <TextView 
         android:id="@+id/ticket_owner_name" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_marginLeft="10dip" 
         android:layout_marginTop="5dip" 
         android:paddingLeft="5dip" 
         android:textColor="#595959" 
         android:textSize="10sp" /> 

        <TextView 
         android:id="@+id/ticket_title" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_marginLeft="10dip" 
         android:layout_marginTop="2dip" 
         android:paddingLeft="5dip" 
         android:textColor="#595959" 
         android:textSize="14sp" /> 

        <TextView 
         android:id="@+id/ticket_create_date" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_marginLeft="10dip" 
         android:layout_marginTop="2dip" 
         android:paddingLeft="5dip" 
         android:textColor="#595959" 
         android:textSize="10sp" /> 
       </LinearLayout> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_gravity="center" > 

       <TextView 
        android:id="@+id/ticket_text" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center_horizontal|center_vertical" 
        android:layout_margin="5dip" 
        android:textColor="#595959" 
        android:textSize="14sp" /> 
      </LinearLayout> 
     </LinearLayout> 

    </RelativeLayout> 
+0

曾爲完美感謝。 – 2013-03-01 17:14:48

+0

很高興我能幫上忙 – 2013-03-01 17:15:34

0

嗨首先,當你用相對佈局工作是謹慎,因爲如果你改變對齊或該佈局將消失(或)可能會改變排列,所以不用擔心撤銷任何修改您的佈局ü可以返回到以前的對齊方式,現在您可以在佈局中逐個修改項目。