본문 바로가기

알아두면 좋은 정보/유용한 IT 정보

안드로이드 컨스트레인트 레이아웃 ConstraintLayout

ConstraintLayout


다른 View 에 대해 Constraint (제약, 속박) 을 거는 식으로 layout 을 하는 기법


❖ Android Studio 2.2 이상에서 새롭게 지원됨.

   ➢ API 9 이상 단말이면 실행가능함.


❖ Layout Editor

   ➢ ConstraintLayout 지원을 위해 설계되었으나 나머지 Layout Manager종류들도 모두 지원함.


❖ Blueprint 와 Guideline

   ➢  기존의 실제 화면배치모습을 흉내내서 보여주는 Layout Preview 화면에

       추가하여, 설계도처럼 각 View 들의 화면배치를 표현해주는 Blueprint

       화면이 지원됨.

    ➢ Guideline 은 화면에 일종의 기준선을 두고 이 기준선에 대해 각 View 들이

       Constraint (제약, 속박) 을 걸 수 있도록 해줌.


■ Guideline 은 그 자체로 View 임.


■ Guideline 은 그래픽 디자이너들이 종종 쓰는 기법이며, Android

Studio 를 이용하여 디자이너들이 직접 화면 디자인 산출물을 만들

수도 있어 개발자와 깔끔한 분업이 가능함.


❖ Layout Inspector

   ➢ 배치된 View 의 속성들을 고칠 수 있으며, 이는 기존의 Property 편집창에

      ConstraintLayout 을 위한 기능을 추가한 것임.



ConstraintLayout은 위젯(뷰)의 

위치, 크기를 유연한 방법으로 배치하도록 하는 

ViewGroup의 서브클래스이다. 

현재로써는, 다음과 같은 제약조건을 이용할 수 있다.


Relative Positioning

Margins

Centering Positioning

Visibility Behavior

Dimension Constraint

Virtual Helpers Objects

참고로, 제약조건은 순환관계를 가질 수 없다.


Note : 이 레이아웃은 Support 라이브러리로 지원되며, 

API 9(진저브레드) 이상부터 이용할 수 있다. 

안드로이드 팀은 이 레이아웃에 더 많은 기능을 추가할 예정이며, 

바뀐 내용은 이 문서에 반영될 것이다.


참조싸이트


http://kunny.github.io/lecture/ui/2016/05/22/constraint_layout_1/


https://realm.io/kr/news/constraintlayout-it-can-do-what-now/


http://dktfrmaster.blogspot.kr/2016/09/constraintlayout.html