2012-04-15 5 views
1

이렇게 컨트롤을 어떻게 배치 할 수 있습니까? enter image description here왼쪽에서 오른쪽으로 정렬

또 다른 단어 - TextView은 왼쪽에 정렬되고 두 번째는 오른쪽에 정렬됩니다. 물론 빨간색 레이아웃은 화면 너비에 따라 늘어나야합니다. 나는 이것을 가장 좋은 방법으로하는 방법을 모른다.

답변

3

다음 레이아웃을 요구 사항에 사용할 수 있습니다.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent" 
    android:background="#ffffff" > 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" > 

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

     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentRight="true"/> 

    </RelativeLayout> 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" > 

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

     <TextView 
      android:id="@+id/textView4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentRight="true"/> 

    </RelativeLayout> 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" > 

     <TextView 
      android:id="@+id/textView5" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentLeft="true"/> 

     <TextView 
      android:id="@+id/textView6" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentRight="true"/> 

    </RelativeLayout> 

</LinearLayout> 
0

당신은 하나의 RelativeLayout의에 전체보기를 설정하고에 텍스트 뷰를 스틱 layout_alignParentLeft, layout_alignParentRight을 사용할 수 있습니다 : 그럼 그냥 여기 레이아웃의 유형에 대한 링크가

android:layout_alignParentRight="true" 

처럼 textviews 위치 뷰의 왼쪽과 오른쪽, 각면에 Textview를 유지하는 layout_alignBaseline. 다음 layout_below는 Textview의 다음 줄을 넣습니다.

또는 LinearLayout을 layout_width = "match_parent"로 사용하고 위의 동일한 방법을 사용하여 빨간색 상자를 RelativeLayout으로 바꿀 수 있습니다.

그러나 레이아웃의 각 유형을 확인하여 각 컨테이너의 특성을 확인한 다음 어느 것이 전체적으로보기에 가장 적합한 지 결정하지만 화면에서 더 많은보기/레이아웃을 사용하면 일부 장치에서 성능에 영향을줍니다. :)

0

RelativeLayout을 사용할 수 있지만 같은 행에있는이 두보기의보기는 고정 폭이어야합니다. 오른쪽 뷰가 너비보다 큰 너비를 가졌다 고 확신하는 경우 너비에 wrap_content를 할당 할 수 있지만 두 번째 뷰가 전체 화면 너비를 차지할 수 있다면 레이아웃에 고정 폭을 할당해야합니다. 왼쪽과 오른쪽 볼에

그래서 세트의 LayoutParams 다음과 같이 LeftView :

Layout_width = fill_parent, Layout_height = wrap_content, layout_toLeftOf = @ ID +/rightView,

SecondVIew :

Layout_width = wrap_content, Layout_height = wrap_content, layout_alignParentRight = true

1
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent" 
    android:background="#ffffff" > 

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

     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentRight="true"/> 


     <TextView 
      android:id="@+id/textView3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_below="@+id/textView1"/> 

     <TextView 
      android:id="@+id/textView4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentRight="true" 
      android:layout_below="@+id/textView2"/> 


     <TextView 
      android:id="@+id/textView5" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentLeft="true" 
      android:layout_below="@+id/textView3"/> 

     <TextView 
      android:id="@+id/textView6" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="TextView" android:layout_alignParentRight="true" 
      android:layout_below="@+id/textView4"/> 

</RelativeLayout> 
+0

각 행에 대해 왼쪽 및 오른쪽 'TextView'의 높이가 동일한 경우에만 작동합니다. – tir38

관련 문제