2017-01-07 2 views
0

У меня есть родитель LinearLayout с weightSum стоимости и orientation="horizontal" и она имеет шесть ребенка RelativeLayouts все имеющие ширину = «0dp» и layout_weight="1", так что последние три Относительные макеты обернуть на следующую строку. но первые три дочерних относительных макета отображаются, а последние три не отображаются, я хочу их перевести на следующую строку.обруча взвешенной линейной компоновки

<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> 

Edited Примечание: Я не хочу, чтобы обернуть последние три RelativeLayouts в другом LinearLayout, чтобы переместить его в следующей строке Потому что в случае любого пустого содержания RelativeLayout Я хочу, чтобы установить его видимость "GONE" так они могут лучше настроиться, не покидая пустого места.

ответ

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> 
+0

но он будет показывать все в 1 строке я не хочу, чтобы показать их в одном ряду. просто хочу обернуть последние три элемента в следующую строку. –

+0

андроид: ориентация = «горизонтальная, пожалуйста, сначала сделайте это правильно – Saveen

0

Вместо того, чтобы пытаться иметь «завернуть» эффект макетов, вы должны иметь две вложенные линейные макеты внутри вашего внешнего макета. Обертка не работает в макетах Android.

Вы должны иметь:

<LinearLayout orientation = "vertical"> 
    <LinearLayout orientation = "horizontal" weight_sum="3"> 
     <Relative layout_weight="1"/> 
     <Relative layout_weight="1"/> 
     <Relative layout_weight="1"/> 
    </LinearLayout> 
    <LinearLayout orientation = "horizontal" weight_sum="3"> 
     <Relative layout_weight="1"/> 
     <Relative layout_weight="1"/> 
     <Relative layout_weight="1"/> 
    </LinearLayout> 
</LinearLayout> 
+0

Отредактировав вопрос запиской –

Смежные вопросы