System.out.println("Hello, World");

방향 설정

 - LinearLayout은 차일드 뷰를 일렬로 배치하는 레이아웃이다. XML 문서에 나타나는 순서대로 뷰가 차곡 차곡 배치된다. 별도의 지정이 없는 한 뷰 사이의 공백은 없으며 다닥 다닥 붙어서 배치된다. 가장 단순해 보이지만 직관적이어서 사용 빈도가 높다. 또한 응용의 묘미가 있어서 활용도가 높으며, 리이너 몇개만 조합해도 왠만한 화면 모양은 거의 만들 수 있다.


 리니어의 가장 중요한 속성은 뷰의 배치 방향을 결정하는 orentation이다. 차일드를 일렬로 배치하는 방법은 수평, 수직 두 가지가 있다. vertical은 차일드를 위에서 아래로 수직으로 배열하고, horizontal은 차일드를 왼쪽에서 오른쪽으로 수평배열한다. 이 속성을 별도로 지정하지 않을때는 dafault인 수평으로 적용된다.


 리니어 레이아웃을 적용시키기 위해서는 android:orientatin="horizontal"을 적용시키면 된다.


 만약 텍스트의 속성이에서 android:layout_width="fill_parent"로 지정해놓으면 부모의 폭 전체를 모두 차지해버리기 때문에 나머지 텍스트들은 보이지가 않는다. 그리하여 fill_parent를 android:layout_width="wrap_content"로 바꿔야 한다.


 바꾼후 실행해보면 각 문자열이 자신의 폭만큼만 차지하여 나란히 배열될 것이다. 수평으로 배치할려면 차일드가 꼭 필요한만큼의 폭만 사용해야 한다. 단 화면 폭이 좁아 마지막 문자열은 자동 개행되어 표시된다. 만약 앞쪽 두 문자열이 레이아웃의 폭을 다 써버렸다면 마지막 문자열은 화면 밖으로 밀려나 보이지 않을 것이다.


리니어는 무조건 차일드를 일렬로 배치하기만 할 뿐 자동 개행기능은 제공하지 않는다. 위쪽에서 자동 개행되는 것은 텍스트 뷰의 기능이지 리니어의 기능이 아니다. 


정렬 지정

뷰의 영역이 충분히 크면 상하좌우에 넓은 여백이 생긴다. 하지만 뷰가 커진다고 해서 내용물도 같이 커지는게 아니기 때문에 어느족에 배치할 것인지의 문제가 생긴다. 내용물을 뷰의 어느쪽에 배치할 것인가는 gravity 속성으로 지정한다. 수평, 수직 방향에 대해 정렬 방식을 각각 지정할 수 있으며 | 연산자로 두 개의 속성을 묶어서 지정할 수 있다.





Posted by 김마농