Ref : https://superohinsung.tistory.com/231
레이아웃 내의 자식(Children) 뷰 위젯들이 서로 간의 상대적(Relative) 위치 관계에 따라 최종적으로 표시될 영역을 결정하도록 만드는 레이아웃


RelativeLayout은 복잡한 레이아웃 구조나 복잡한 반응형 디자인에서 구현하기 까다롭고 유지보수 하기에 힘듦이 있다…. 이를 해결한 녀석.. 저 녀석 때문에 요즘 xml 에서는 Relative Layout을 사용하지 않는 듯? 사실 constraint layout으로 다 커버가 가능하기 때문에 사용할 이유가 없긴함 ㅇㅅㅇ..
부모 뷰그룹 안에서 다른 요소들과의 상대적인 제약조건을 설정함으로써 화면에 배치되도록 하는 레이아웃을 말한다.
플랫한 뷰 계층 구조를 가지고 있기 때문에 다른 layout보다 성능적인 면에서도 우수함..!
여러 가지 제약 유형을 사용을 하여서 내가 원하는 디자인 혹은 요구 디자인에 맞게 자유 자재로 수정이 가능함 << 이게 constraint layout을 사용하는 가장 큰 이유가 아닐까?
다음과 같은 제약 유형들이 있대요 - edited by chat gpt
상단, 하단, 시작, 종료 제약: 각 뷰의 네 면(위, 아래, 좌측(시작), 우측(종료))을 부모나 다른 뷰의 해당 면에 연결할 수 있음 예:
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
가장 많이 사용하는 제약인듯???
텍스트 정렬: 텍스트가 포함된 뷰들의 텍스트 베이스라인을 서로 맞출 때 사용된다 예:
app:layout_constraintBaseline_toBaselineOf="@id/anotherTextView"