2014-10-31 4 views
2

이 같은 레이아웃이 있습니다 는 테이블 행의 내부에있는 LinearLayout의 하단에 텍스트를 설정할

<TableRow 
    android:id="@+id/tableRow1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 

    <LinearLayout 
     android:id="@+id/titles1" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_marginTop="0dp" 
     android:orientation="vertical" 
     android:paddingLeft="0dp" 
     android:paddingRight="0dp" 
     android:paddingTop="0dp" > 

     <TextView 
      android:id="@+id/firstLine1" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:text="First Row" 
      android:textSize="20sp" > 
     </TextView> 

     <TextView 
      android:id="@+id/secondLine1" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="bottom" 
      android:gravity="bottom" 
      android:text="2nd Row" 
      android:textSize="16sp" > 
     </TextView> 
    </LinearLayout> 

    <ImageView 
     android:id="@+id/logo1" 
     android:layout_marginTop="0dp" 
     android:paddingTop="0dp" 
     android:src="@drawable/dji" > 
    </ImageView> 
    </TableRow> 
</TableLayout> 

내가이 테이블 행 내부 레이아웃의 하단에 2 행을 설정하기 위해 노력하고 있음 linearlayout은 전체 행 공간을 차지합니다. 매개 변수를 조정하려고했지만 지금까지는 만들 수 없습니다.

의견이 있으십니까? 내 레이아웃은 괜찮습니까? 또는 다른 더 나은 선택?

다음과 같은 레이아웃을 보여줍니다. enter image description here

답변

1

layout_weight 속성 (documentation)을 사용해보십시오. 첫 번째 및 두 번째 TextView을 고정 숫자 height으로 설정하고 Viewheight으로 설정하고 0weight1으로 설정하면 하나의 자리 표시자를 추가 할 수 있습니다. 난이 도움이되기를 바랍니다 :)

<LinearLayout 
    android:id="@+id/titles1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_marginTop="0dp" 
    android:orientation="vertical" 
    android:paddingLeft="0dp" 
    android:paddingRight="0dp" 
    android:paddingTop="0dp" > 

    <TextView 
     android:id="@+id/firstLine1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="First Row" 
     android:textSize="20sp" > 
    </TextView> 

    <TextView 
     android:id="@+id/palceholder" 
     android:layout_width="match_parent" 
     android:layout_height="0" 
     android:layout_weight="1"> 

    <TextView 
     android:id="@+id/secondLine1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="2nd Row" 
     android:textSize="16sp" > 
    </TextView> 
</LinearLayout> 
+0

것은 내가 지금 그것을 확인하자. – huican

+0

예, 완벽하게 작동했습니다. 그것이 내가 원하는 것이고, 나는 더 많은 것을 배울 필요가 있고, 많이 감사합니다. – huican

+0

위대한, 이것을 읽을 행복! 그렇다면 대답을 수락하도록 요청할 수도 있습니다. –

1

는 FrameLayout이에있는 LinearLayout 변환 :

<FrameLayout 
    android:id="@+id/titles1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_marginTop="0dp" 
    android:paddingLeft="0dp" 
    android:paddingRight="0dp" 
    android:paddingTop="0dp"> 

    <TextView 
     android:id="@+id/firstLine1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:gravity="top" 
     android:text="First Row" 
     android:textSize="20sp"> 
    </TextView> 

    <TextView 
     android:id="@+id/secondLine1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom" 
     android:text="2nd Row" 
     android:textSize="16sp"> 
    </TextView> 
</FrameLayout> 

또는 사용 무게를있는 LinearLayout에 :

<LinearLayout 
    android:id="@+id/titles1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_marginTop="0dp" 
    android:orientation="vertical" 
    android:paddingLeft="0dp" 
    android:paddingRight="0dp" 
    android:paddingTop="0dp"> 

    <TextView 
     android:id="@+id/firstLine1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:gravity="top" 
     android:text="First Row" 
     android:textSize="20sp"> 
    </TextView> 

    <TextView 
     android:id="@+id/secondLine1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:gravity="bottom" 
     android:text="2nd Row" 
     android:textSize="16sp"> 
    </TextView> 
</LinearLayout>