包裹加权线性布局

时间:2017-01-07 16:05:39

标签: android android-linearlayout

我的父LinearLayout的{​​{1}}值 3 weightSum且有六个孩子orientation="horizontal"都有宽度=&# 34; 0dp"和RelativeLayouts,以便最后三个相对布局换行到下一行。但前三个子相对布局正在显示,最后三个不在显示中,我想将它们包装到下一行。

layout_weight="1"

已编辑注意: 我不想将最后三个RelativeLayout包装在另一个LinearLayout中以将其移动到下一行因为在RelativeLayout的任何空内容的情况下我想将其可见性设置为 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/row_wrap" android:orientation="horizontal" android:weightSum="3" > <!-- Mileage --> <RelativeLayout android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/milage_wrap" android:layout_weight="1" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_meter_car" android:id="@+id/milage_img" android:layout_alignParentStart="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@id/milage_img" android:layout_toEndOf="@+id/milage_img" android:text="32000" android:layout_marginStart="5dp" android:id="@+id/milage_txt" /> </RelativeLayout> <!-- transmission--> <RelativeLayout android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/transmission_wrap" android:layout_weight="1" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/trans_img" android:layout_toEndOf="@+id/trans_img" android:text="32000" android:layout_marginStart="5dp" android:id="@+id/trans_txt" /> <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_transmission_car" android:id="@+id/trans_img" android:layout_alignParentTop="true" android:layout_alignParentStart="true" /> </RelativeLayout> <!--Engine Size --> <RelativeLayout android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/engine_wrap" android:layout_weight="1" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_engine" android:id="@+id/engine_img" android:layout_alignParentStart="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@id/engine_img" android:layout_toEndOf="@+id/engine_img" android:text="32000" android:layout_marginStart="5dp" android:id="@+id/engine_txt" /> </RelativeLayout> <!--condition --> <RelativeLayout android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/condition_wrap" android:layout_weight="1" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_condition" android:id="@+id/condition_img" android:layout_alignParentStart="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@id/condition_img" android:layout_toEndOf="@+id/condition_img" android:text="Good" android:layout_marginStart="5dp" android:id="@+id/condition_txt" /> </RelativeLayout> <!-- fuel --> <RelativeLayout android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/fuel_type_wrap" android:layout_weight="1" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_fuel" android:id="@+id/fuel_type_img" android:layout_alignParentStart="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@id/fuel_type_img" android:layout_toEndOf="@+id/fuel_type_img" android:text="Diesel" android:layout_marginStart="5dp" android:id="@+id/fuel_type_txt" /> </RelativeLayout> <!-- Fuel Consumption--> <RelativeLayout android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/fuel_cons_wrap" android:layout_weight="1" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_fuel_consumption" android:id="@+id/fuel_cons_img" android:layout_alignParentStart="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@id/fuel_cons_img" android:layout_toEndOf="@+id/fuel_cons_img" android:text="13/23" android:layout_marginStart="5dp" android:id="@+id/fuel_consump_txt" /> </RelativeLayout> </LinearLayout> 所以他们可以更好地调整而不留空空间。

2 个答案:

答案 0 :(得分:0)

试试这种方式

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/row_wrap"
    android:orientation="vertical"
    android:weightSum="2"
    >


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/row_wrap"
    android:orientation="horizontal"
    android:layout_weight="1"
    android:weightSum="3"
    >

<!-- Mileage -->
<RelativeLayout
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:id="@+id/milage_wrap"
    android:layout_weight="1"
    >

    <ImageView
    android:layout_width="20dp"
    android:layout_height="20dp"
    android:src="@drawable/ic_meter_car"
    android:id="@+id/milage_img"
    android:layout_alignParentStart="true" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@id/milage_img"
        android:layout_toEndOf="@+id/milage_img"
        android:text="32000"
        android:layout_marginStart="5dp"
        android:id="@+id/milage_txt"
        />



 </RelativeLayout>

  <!-- transmission-->
 <RelativeLayout
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:id="@+id/transmission_wrap"
    android:layout_weight="1"

    >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/trans_img"
        android:layout_toEndOf="@+id/trans_img"
        android:text="32000"
        android:layout_marginStart="5dp"
        android:id="@+id/trans_txt"
        />

    <ImageView
        android:layout_width="20dp"
        android:layout_height="20dp"
        android:src="@drawable/ic_transmission_car"
        android:id="@+id/trans_img"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true" />


 </RelativeLayout>

 <!--Engine Size -->

 <RelativeLayout
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:id="@+id/engine_wrap"
    android:layout_weight="1"
    >

    <ImageView
        android:layout_width="20dp"
        android:layout_height="20dp"
        android:src="@drawable/ic_engine"
        android:id="@+id/engine_img"
        android:layout_alignParentStart="true" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@id/engine_img"
        android:layout_toEndOf="@+id/engine_img"
        android:text="32000"
        android:layout_marginStart="5dp"
        android:id="@+id/engine_txt"
        />

 </RelativeLayout>

 </LinearLayout>

 <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/row_wrap"
    android:orientation="horizontal"
    android:layout_weight="1"
    android:weightSum="3"
    >

    <!--condition -->
    <RelativeLayout
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/condition_wrap"
       android:layout_weight="1"
        >

        <ImageView
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:src="@drawable/ic_condition"
            android:id="@+id/condition_img"
            android:layout_alignParentStart="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@id/condition_img"
            android:layout_toEndOf="@+id/condition_img"
            android:text="Good"
            android:layout_marginStart="5dp"
            android:id="@+id/condition_txt"
            />
    </RelativeLayout>

    <!-- fuel -->
    <RelativeLayout
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/fuel_type_wrap"
        android:layout_weight="1"
        >

        <ImageView
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:src="@drawable/ic_fuel"
            android:id="@+id/fuel_type_img"
            android:layout_alignParentStart="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@id/fuel_type_img"
            android:layout_toEndOf="@+id/fuel_type_img"
            android:text="Diesel"
            android:layout_marginStart="5dp"
            android:id="@+id/fuel_type_txt"

            />

    </RelativeLayout>

    <!-- Fuel Consumption-->
    <RelativeLayout
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/fuel_cons_wrap"
        android:layout_weight="1"
        >

        <ImageView
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:src="@drawable/ic_fuel_consumption"
            android:id="@+id/fuel_cons_img"
            android:layout_alignParentStart="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@id/fuel_cons_img"
            android:layout_toEndOf="@+id/fuel_cons_img"
            android:text="13/23"
            android:layout_marginStart="5dp"
            android:id="@+id/fuel_consump_txt"

            />

    </RelativeLayout>

   </LinearLayout>

  </LinearLayout>

答案 1 :(得分:0)

您应该在外部布局中使用两个嵌套的线性布局,而不是尝试使用布局的“换行”效果。环绕在Android布局中不起作用。

你应该:

right