2017-01-12 3 views
0

Ich möchte fragen, ob es eine Möglichkeit gibt, LinearLayout auf seinem Teiler zu zentrieren, nicht Inhalte?Centre LinearLayout auf Teiler

Ich dachte daran, die Breite einer Zelle in eine andere zu kopieren, also sind beide gleich. zu erreichen
Hier ist, was ich versuche:

Hier ist das Layout:

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

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

       <TextView 
        android:id="@+id/savings_accumulated_percentage_value_label" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Zrealizowano:" 

        android:layout_gravity="end" 
        /> 


       <TextView 
        android:id="@+id/savings_accumulated_value_label" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Zgromadzono:" 

        android:layout_gravity="end" 

        /> 

       <TextView 
        android:id="@+id/savings_target_value_label" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Cel:" 

        android:layout_gravity="end" 

        /> 

       <TextView 
        android:id="@+id/savings_target_date_label" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Data zakończenia:" 

        android:layout_gravity="end" 
        /> 

      </LinearLayout> 

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


       <TextView 
        android:id="@+id/savings_accumulated_percentage_value" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="18%" 
        android:textColor="@color/colorAccent" /> 

       <TextView 
        android:id="@+id/savings_accumulated_value" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="865 zł" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/savings_target_value" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="2 865 zł" 
        android:textColor="@color/colorPrimary" 
        android:textStyle="bold" 

        /> 

       <TextView 
        android:id="@+id/savings_target_date" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="03.07.2018" 
        /> 

      </LinearLayout> 


     </LinearLayout> 

enter image description here

+0

bitte –

+0

das Layout xml teilen oh, so, sorry – AndroidBegginer

Antwort

1

Sie android:weightSum Eigenschaft des übergeordneten Layout und android:weight Eigenschaft auf den Kinder Layouts verwenden können, um dies zu erreichen .

Die allgemeine Regel ist WeightSum = Summe aller Gewichte aller unmittelbaren Kinder (Im Beispiel unten ist es 2 = 1 + 1). Sie erhalten zwar keine Fehler, wenn die Gewichte nicht gleich sind, aber das Ergebnis ist möglicherweise nicht so, wie Sie es erwartet haben.

Hier ist ein einfaches Beispiel.

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:layout_centerInParent="true" 
    android:weightSum="2"> <!-- weightSum property --> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"> <!-- weight property --> 
     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center" 
      android:text="hello"/> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"> <!-- weight property --> 
     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center" 
      android:text="hi"/> 
    </LinearLayout> 
</LinearLayout> 
+0

dank zu tun vergessen, funktioniert perfekt – AndroidBegginer

+0

@AndroidBegginer Prost! –