안드로이드 레이아웃
프로그래밍/Android 2013. 8. 25. 22:46안드로이드 레이아웃
일반적인 레이아웃 오프젝트
FrameLayout
- 가장 간단한 레이아웃, 스크린 상의 빈 공간이다.
LinearLayout
- 모든 자식들을 하나의 방향으로 정렬한다.
- 모든 자식들은 순차적으로 쌓여진다.
weight 가중치?
- 3개의 텍스트 박스중 1,2번째 텍스트 박스는 가중치가 1이고 3번째 텍스트 박스는 가중치가 0라면
=> 세번째 텍스트 박스는 크기에 변화가 없고 첫번째, 두번째 텍스트 박스만 남은 공간의 절반씩을 점유한다.
- 3번째 텍스트 박스가 가중치가 2라면
=> 3번째 텍스트 박스는 전체공간의 절반(2/4)을 차지하게 된다.
가중치를 활용하면 스크린 변화에 따라 동적으로 변경되는 레이아웃을 설정할 수 있다.
TableLayout
<TableLayout
xmlns:android="http://schemes.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="1">
<TableRow>
<TextView android:text="@string/table_layout_4_open"
android:padding="3dip"/>
<TextView android:text="@string/table_layout_4_open_shortcut"
android:gravity="right"
android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/table_layout_4_save"
android:padding="3dip"/>
<TextView android:text="@string/table_layout_4_save_shortcut"
android:gravity="right"
android:padding="3dip" />
</TableRow>
</TableLayout>
RelativeLayout
<RelativeLayout
xmlns:android="http://schemes.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_parent"
android:background="@drawable/blue"
android:padding="10px" >
<TextView android:id="@+id/label"
android:layout_width="fill_parent"
android:layout_height=wrap_content"
android:text="Type here:" />
<EditText android:id="@+id/entry"
android:layout_width="fill_parent"
android:layout_height=wrap_content"
android:layout_below="@id/label" /> <==== EditText 가 label 아래 위치한다는 것을 명시
<Button android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height=wrap_content"
android:layout_below="@id/entry" <==== Button 이 entry 아래 위치한다는 것을 명시
android:layout_alignParentRight="true" <==== Button 이 오른쪽 정렬한다는 것을 명시
android:layout_marginLeft="10px"
android:text="OK" />
<Button android:id="@+id/candel"
android:layout_width="wrap_content"
android:layout_height=wrap_content"
android:layout_toLeftOf="@id/ok" <==== Cancel Button 이 OK Button 의 좌측에 위치한다는 것을 명시
android:layout_alignTop="@id/ok"
android:text="Cancel" />
</RelativeLayout>
'프로그래밍 > Android' 카테고리의 다른 글
안드로이드 인텐트 필터 (0) | 2013.08.26 |
---|---|
안드로이드 리소스와 에셋 (0) | 2013.08.26 |
안드로이드 스타일과 테마 적용하기 (0) | 2013.08.25 |
안드로이드 노티피케이션 (0) | 2013.08.25 |
Android 커스텀 다이얼로그 생성 (0) | 2013.08.23 |