2013-10-17 72 views
2

我試圖把2佈局放在彼此頂部,但它不工作。有一個空間,我不知道如何刪除。如何將2個佈局放在彼此的頂部

這裏是我的代碼:

<LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" 
       android:layout_gravity="bottom|center" 
       android:weightSum="1"> 

       <LinearLayout 
        android:layout_width="wrap_content" 
        android:layout_height="170dp" 
        android:layout_weight="0.5" 
        android:background="@drawable/column_white" 
        android:layout_gravity="bottom|center" 
        android:gravity="bottom" 
        android:orientation="vertical" 

        > 
        <LinearLayout 
         android:layout_width="10sp" 
         android:layout_height="100sp" 
         android:background="@drawable/arrow_body" 
         android:layout_marginLeft="10sp" 
         ></LinearLayout> 
        <LinearLayout 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:background="@drawable/arrow_shape" 
         android:layout_marginLeft="6sp" 
         ></LinearLayout> 
       </LinearLayout> 

       <LinearLayout 
        android:layout_width="wrap_content" 
        android:layout_height="150dp" 
        android:layout_margin="25sp" 
        android:background="@drawable/column_blue" 
        android:gravity="center" 
        android:layout_weight="0.5" > 

        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:text="40 000 " 
         android:textColor="#ffffff" 
         android:textSize="25sp" /> 
       </LinearLayout> 

      </LinearLayout> 

RelativeLayout

<RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" > 


    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="170dp" 
     android:background="@drawable/column_white" 
     android:gravity="bottom" 

     android:layout_alignBottom="@id/second_part" 
     android:orientation="vertical" > 

     <LinearLayout 
      android:layout_width="10sp" 
      android:layout_height="100sp" 
      android:layout_marginLeft="10sp" 
      android:background="@drawable/arrow_body" > 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="6sp" 
      android:background="@drawable/arrow_shape" > 
     </LinearLayout> 

    </LinearLayout> 

    <LinearLayout 

     android:id="@+id/second_part" 
     android:layout_width="wrap_content" 
     android:layout_height="150dp" 
     android:layout_margin="25sp" 

     android:background="@drawable/column_blue" 
     android:gravity="center" > 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="40 000" 
      android:textColor="#ffffff" 
      android:textSize="25sp" /> 
    </LinearLayout> 
</RelativeLayout> 
+2

使用相對佈局根視圖。 – TheFlash

+0

使用RelativeLayout或FrameLayout作爲根 –

+0

我試過了,修改了我的代碼 – user2137817

回答

4

使用相對佈局上放置對方的俯視圖,這樣

<RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|center" 
     android:background="#f00" 
     android:orientation="vertical" 
     android:weightSum="1" > 

     <RelativeLayout 
      android:layout_width="wrap_content" 
      android:layout_height="170dp" 
      android:layout_centerInParent="true" 
      android:layout_gravity="bottom|center" 
      android:background="#fff" 
      android:gravity="bottom" 
      android:orientation="vertical" > 

      <LinearLayout 
       android:layout_width="10dp" 
       android:layout_height="100sp" 
       android:layout_centerInParent="true" 
       android:layout_marginLeft="10sp" 
       android:background="#37c100" > 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="6sp" 
       android:background="@drawable/arrow_shape" > 
      </LinearLayout> 
     </RelativeLayout> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="150dp" 
      android:layout_centerInParent="true" 
      android:layout_margin="25sp" 
      android:layout_weight="0.5" 
      android:background="#0000ff" 
      android:gravity="center" > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="40 000 " 
       android:textColor="#ffffff" 
       android:textSize="25sp" /> 
     </LinearLayout> 
    </RelativeLayout> 
-1

在你的第二個LinearLayout,你有一個android:layout_margin="25sp"。 刪除此行或至少不要設置marginTop。

0

這現在也可以使用constraintlayout來完成。在我的用例中,我有一個RecyclerView,當空的時候必須由文本和按鈕「覆蓋」,以允許用戶添加項目到列表中。 (大書呆子牧場編程的書的一部分,挑戰13.3)

代碼如下(改變自己的需要):

<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <LinearLayout 
     android:id="@+id/no_crimes_container" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     app:layout_constraintBottom_toBottomOf="parent" 
     app:layout_constraintEnd_toEndOf="parent" 
     app:layout_constraintHorizontal_bias="0.5" 
     app:layout_constraintStart_toStartOf="parent" 
     app:layout_constraintTop_toTopOf="parent"> 

     <TextView 
      android:id="@+id/no_crimes_text" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginBottom="8dp" 
      android:layout_marginEnd="8dp" 
      android:layout_marginStart="8dp" 
      android:layout_marginTop="8dp" 
      android:text="@string/no_crimes" 
      app:layout_constraintBottom_toBottomOf="parent" 
      app:layout_constraintEnd_toEndOf="@+id/recyclerView" 
      app:layout_constraintStart_toStartOf="@+id/recyclerView" 
      app:layout_constraintTop_toTopOf="@+id/recyclerView" /> 

     <Button 
      android:id="@+id/new_crime_button" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginBottom="8dp" 
      android:layout_marginEnd="8dp" 
      android:layout_marginStart="8dp" 
      android:layout_marginTop="8dp" 
      android:text="@string/new_crime" 
      app:layout_constraintBottom_toBottomOf="@+id/recyclerView" 
      app:layout_constraintEnd_toEndOf="@+id/recyclerView" 
      app:layout_constraintStart_toStartOf="@+id/recyclerView" 
      app:layout_constraintTop_toBottomOf="@+id/textView" /> 

    </LinearLayout> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/crime_recyclerview" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 
</android.support.constraint.ConstraintLayout> 
相關問題