do_it
![[Android] 상대 레이아웃, Relative Layout](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyrZhC%2Fbtq9Xa8kwbS%2FVZEUeqQCbD7jDh7Tos5xOK%2Fimg.png)
[Android] 상대 레이아웃, Relative Layout
상대 레이아웃으로 만들 수 있는 것들은 제약 레이아웃(Constraints Layout)으로 만들 수 있으므로 상대 레이아웃 사용은 권장되지는 않는다. 그러나 상대 레이아웃으로 만들어진 코드를 이해해야 하려면 알고 있어야 한다. 상대 레이아웃은 부모 컨테이너 혹은 다른 뷰와의 상대적인 위치를 통해 뷰의 위치를 결정할 수 있다. 이 때 뷰들의 id를 통해 상대적인 위치를 결정한다. layout_alignParent 속성과 layout_above, layout_below 등의 속성을 사용한다. 제약 레이아웃에 익숙해져 있어서 조금 낯설게 느껴졌지만 비슷하다. 제약 레이아웃이 더 많은 기능을 지원하므로 제약 레이아웃을 쓰는 것을 권장한다고 한다.
![[Android] 리니어 레이아웃, Linear Layout](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkyZfl%2Fbtq9PSTZJq4%2FYuwnjwZlb3GjryKSHR5ndk%2Fimg.png)
[Android] 리니어 레이아웃, Linear Layout
리니어 레이아웃 방향 설정 리니어 레이아웃은 한 쪽 방향으로 뷰를 쌓는다. 따라서 리니어 레이아웃에는 필수 속성으로 방향을 설정해 주어야 한다. orientation 속성을 사용하고 가로 방향으로 쌓을 때는 horizontal, 세로 방향으로 쌓을 때는 vertical로 설정한다. 디폴트 값은 horizontal인 것 같다. 그래도 가독성을 위해서는 써 주는게 좋을 것 같다. ※ 최상위 레이아웃을 바꾸고 싶을 경우 xml 코드를 바꿔서 수정할 수도 있지만 Convert view를 사용해서 쉽게 바꿀 수 있다. 뷰의 크기 관련 속성 layout_width와 layout_height는 dp로 크기를 지정할 수도 있지만 match_parent, wrap_content로 지정할 수 있다. 이 때, match_p..
[Android] 레이아웃의 종류
레이아웃의 종류 제약(Constraint) 레이아웃 : 제약 조건 기반, 연결선을 제약조건으로 한다. 안드로이드 스튜디오 디폴트 레이아웃 리니어(Linear) 레이아웃 : 한 쪽 방향으로 차례대로 뷰를 추가한다. 뷰가 차지하는 사각형 영역을 나타낸다. 리니어 레이아웃은 어느 쪽 방향으로 뷰를 추가할 지에 대한 orientation 속성이 필수이다. 상대(Relative) 레이아웃 : 제약 레이아웃을 사용하면서 권장하지 않는다. 부모 컨테이너 혹은 다른 뷰와의 상대적 위치로 화면을 구성한다. 프레임(Frame) 레이아웃 : 싱글 모델. 가장 상위에 있는 하나의 뷰 또는 뷰 그룹만 보여준다. 여러 개의 뷰가 들어가면 중첩하여 쌓이게 된다. 테이블(Table) 레이아웃 : 격자(Grid) 모델. HTML에서 ..