Gravity • 속성 • 뷰를 어떤 방향으로 끌어 당긴다. • gravity의 종류 - gravity : 속성을 부여하는 뷰와 그 안에 있는 뷰의 관계 - layout_gravity : 속성을 부여하는 뷰와 그 외부에 있는 뷰의 관계 • gravity의 값 종류 - top, bottom, left, right, start, end, center, center_horizontal, center_vertical : 해당 방향으로 끌어 당김. - clip_horizontal, clip_vertical : 부모보다 큰 경우 잘라낸다. - fill, fill_horizontal, fill_vertical : 뷰를 끌어 당겨서 크기를 키운다. 이 글은 패스트 캠퍼스 Android 앱 개발의 정석 with Kotl..
Constraint Layout • 부모가 될 수 있는 뷰 (컨테이너 뷰) • 자식 뷰들을 제약을 통해 배치하는 레이아웃 • Relative Layout의 기능 + 다른 기능 -> Relative Layout의 상위호환이다! • center 속성이 없다. - 반대 방향으로 작용하는 두 개의 제약을 동시에 적용하면 두 제약의 가운데에 배치된다. ex) A뷰의 왼쪽에 있어라 + A뷰의 오른쪽에 있어라 = A뷰의 가운데에 배치 • layout_constraint + 제약 이름 1. 상대적 위치 배치 (Relative Layout의 기능) • layout_constraintLeft_toLeftOf="@id/아이디" - constraint -> 제약 - Left -> 속성이 적용되는 뷰의 왼쪽 변 - toLeft..
XML의 네임 스페이스 1. xml xml에서 요소의 이름은 직접 정의할 수 있다. 따라서, 서로 다른 xml 문서를 통합할 경우 같은 이름을 가진 요소로 인한 충돌이 발생할 수 있다. ex) 표의 기능을 하는 table 태그 Apples Bananas 가구로써의 테이블을 나타내는 table 태그 African Coffee Table 80 120 이는 접두사를 이용하여 해결할 수 있는데, 같은 이름에 다른 접두사를 붙이면 이름 충돌을 방지할 수 있다. xml에서 접두사를 사용하려면, 접두사에 대한 네임스페이스를 정의해야 한다. 식별자에는 보통 통합 자원 식별자인 URI(Uniform Resource Identifier)를 사용한다. Apples Bananas African Coffee Table 80 1..
Relative Layout • 부모가 될 수 있는 뷰 (컨테이너 뷰) • 자식 뷰들을 특정 기준점을 기준으로 정리하는 레이아웃 - 기준점 : 부모 뷰, 자식 뷰 • 계산하는 방식이 리소스를 많이 먹음 -> 정말 필요할 때만 사용 1. 부모 뷰 기준 • 부모 뷰를 기준으로 자식 뷰들의 위치를 정함 • 속성 - android:layout_alignParentLeft="true" : 부모 뷰 안의 맨 왼쪽에 자식 뷰 배치 - true false로 속성 적용 여부 결정 - Left 대신 Right, Top, Bottom 등을 넣어 상하좌우 위치 설정 - android:layout_centerInParent="true" : 부모 뷰 안의 정가운데에 자식 뷰 배치 - true false로 속성 적용 여부 결정 2..
리니어 레이아웃 • 자식 뷰들을 하나의 가로 또는 세로 방향으로 정리하는 레이아웃 • 부모가 될 수 있는 컨테이너 뷰 1. 속성 • orientation : 자식 뷰의 방향을 설정 - horizontal : 가로, 수평 방향. - vertical : 세로, 수직 방향. • android:layout_width / android:layout_height : 레이아웃의 가로 / 세로 길이 - 직접 입력 : 100dp, 5px 같이 길이를 직접 입력 - match_parent : 부모 뷰의 길이만큼으로 설정 * 만약 부모 뷰가 없는 최상위 뷰라면 화면 전체를 기준으로 삼는다. - wrap_content : 내용물의 크기만큼 설정 • android:layout_weight : (가중치) / (전체 가중치) 비율..