본문 바로가기

[Android/Kotlin] 안드로이드 ConstraintLayout(1) Chain

꿈꾸는블로그왕 2021. 2. 7.

안녕하세요. 오늘은 ConstraintLayout의 기능중에 Chain에 대해서 알아보겠습니다.

 

Chain은 사용 가능한 공간 내 뷰들간의 분할되는 방식을 제어할 수 있는 제약조건입니다

 

그리고 기존 레이아웃 중에 LinearLayout에서 사용하였던 weight 속성을 ConstrainrLayout에서도 사용할 수 있습니다.

 

그럼 만드는 방법에 대해서 설명드리겠습니다.

 

STEP01. 체인 만들기

Chain은 여러 뷰들로 구성되어 있기때문에 Chain을 만들기 위해서 연결할 뷰들을 모두 선택해야 합니다.

아래와 같이 모든 TextView를 선택하고, 우클릭 Chain > Create Horizontal Chain을 선택하여 체인을 만들 수 있습니다.

 

체인을 생성하면 아래와 같이 뷰들의 관계 및 위치가 변화합니다.

 

Chain은 세가지 다른 종류가 있습니다. spread / spread inside / packed

 

 

 

STEP02. 체인모드

Spread Chain

기본 모드는 Spread 모드이며, 이는 사용가능한 공간 내에서 일정한 간격으로 뷰를 배치합니다.

 

 

Spread Inside Chain

Spread Inside Chain 모드는 체인의 가장 바깥쪽 뷰를 바깥쪽 가장자리에 스냅한 다음 사용가능한 공간내에서 동일한 간역으로 뷰들을 배치합니다.

 

 

Packed

Packed 모드는 뷰를 함께 묶음 다음 사용 가능한 공간내에서 중앙에 배치합니다.

 

 

STEP03. Weight 속성

Chain에서 유용한 기능중에 하나는 체인 내 개별 뷰에 Weigt속성을 줄 수 있다는 것입니다.

아래 그림과 같이 Third TexView에 android:layout_width="0dp" app:layout_constraintHorizontal_weight="1" 속성을 지정하며 적용됩니다.

 

댓글