자바 어플 개발/기초

LinearLayout

appmaster 2019. 7. 11. 10:18

LinearLayout이란?

가장 많이 사용되는 Layout을 찾으라면, 단연 LinearLayout 클래스를 꼽을 수 입니다. 이는 LinearLayout이, 사용이 간편하고 표시 형태가 직관적이라는 장점을 가졌기 때문이기도 하지만, 무엇보다 사각형 박스 형태의 디스플레이 화면에 UI 요소들을 일렬로 배치할 수 있어서 안정감있는 화면 구성이 가능하다는 이유 때문입니다.

 

부모뷰 컴포넌트는 가지고있는 자식뷰를 배치관 작업을 한다.

 

- Orientation (horizental, vertical) ---> 부모클래스에서 설정한다.

- Weight ---> 자식클래스에서 설정한다.

- Gravity ---> 부모클래스에서 설정한다. (layout_gravity가 아니라 그냥gravity이다.)

 

 

Orientation 같은 경우에는 자식뷰를 가로로 배치할것인지, 새로로 배치할것인지를 결정하는 것이다.

LinearLayout은 배치관리 설정을 따로 하지않으면 자동으로 Orientation horizental모드로 해준다.

 

 

Weight 같은 경우는 자식뷰의 크기를 가중치에 의해서 결정되게 하는 것이다.

Weight의 가중치를 가로에도 줄 수 있고 세로에도 줄 수 있다. 만약 가로에 가중치를 주고 싶으면 width에 0dp를 준다. 그리고 Layout_weight를 1로 준다. 그러면 나머지 자식뷰들이 차지하지못한 공간을 다 가져간다.

 

 

Gravity 같은 경우 자식뷰를 부모의 뷰에서 한쪽으로 치우치게 배치하는 방법이다.

그리고 Center와 Center_horizental의 차이점은 Center은 화면 전체의 중심이므로 화면 전체에 가운데에 있다. 하지만 Center_horizental같은 경우는 가로의 중심이므로 부모뷰 가로의 중심을 차지하게 되므로 맨위의 가운데 부분을 차지하고, 마찬가지로 Center_vertical은 부모뷰의 세로부분의 가운데 부분이기 때문에 맨왼쪽에 중간부분에 자식뷰가 나타나게 된다. 부모뷰에서 자식뷰의 위치를 설정하는것이기떄문에 부모클래스에서 설정한다.

'자바 어플 개발 > 기초' 카테고리의 다른 글

FrameLayout  (0) 2019.07.11
RelativeLayout  (0) 2019.07.11
View의 계층구조  (0) 2019.07.11
View 설정법  (0) 2019.07.11
안드로이드 화면구성 도구  (0) 2019.07.10