Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

운기의 블로그

안드로이드 - #4 ConstraintLayout 본문

안드로이드

안드로이드 - #4 ConstraintLayout

운띠야 2022. 3. 29. 16:28

저번 포스팅에 이어서 ConstraintLayout의 제약사항의 종류에 대해서 알아보자

 


제약사항 종류

7) Chains

체인은 사슬, 일련과 같은 뜻을 지니고 있다.

여러개의 위젯을 하나의 그룹과 같이 만들어주는 역할을 한다고 생각하면된다. 

 

그러면 안드로이드 가이드 문서에서는 체인에 대해 어떻게 설명하고 있는지 알아보자.

 

A set of widgets are considered a chain if they are linked together via a bi-directional connection.

-> A의 위젯과 B의 위젯이 양방향으로 연결되었을때 체인으로 간주된다. 

 

그리고 체인으로 연결되었을때 가장 앞에 있는 위젯은 A는 체인의 HEAD가 된다.

 

즉 수평축으로 체인이 연결되어있다면 가장 왼쪽에 있는 위젯이 체인의 HEAD,

수직축으로 체인이 연결되어있다면 가장 위에 있는 위젯이 체인의 HEAD가 된다.

 

bias 값을 이용해서 위젯의 위치를 배치할때 HEAD는 체인의 기준이 배치되게 된다. 

app:layout_constraintVertical_bias="0.0"
app:layout_constraintHorizontal_bias="0.4"

 

 

그리고 체인에는 몇가지의 체인 스타일이 존재하는데 

수직과 수평축에 둘다 동일하게 방법으로 적용할 수 있다.

 

1) packed

 

app:layout_constraintHorizontal_chainStyle="packed"

마진값이 없을 때
마진값이 있을때

두개의 위젯이 하나로 포장되어져있다.

 

2) spread

app:layout_constraintHorizontal_chainStyle="spread"

default 한 값으로 두개의 위젯은 분리되어져있다.

 

3) spread_inside

app:layout_constraintHorizontal_chainStyle="spread_inside"

위젯이 분리되어져있지만 체인으로 연결된 양끝의 위젯이 레이아웃 가장 자리에 붙어져서 벌어지게 된다.

 


여기 까지 자주 사용되는 ConstarintLayout이 가지고 있는 제약사항에 대해 알아봤습니다. 

그동안 ConstriantLayout을 사용하면서 기계처럼, 이럴땐 이렇게 써야지 라는 식으로 몸에 벤 습관대로 사용해왔는데

이번에 포스팅을 하면서 다시한번 정리 할 수 있던 계기가 되었고 앞으로 UI 작업하는데 많은 도움이 될거 같습니다. 

 

이상 ConstraintLayout에 대한 포스팅을 마치겠습니다 !!