[Android]ConstraintLayout: layout_constrainedWidth/Height 알아보기

Updated:

목차

  1. layout_constrainedWidth/Height의 역할
  2. 활용
  3. 마무리

1. layout_constrainedWidth/Height의 역할

안드로이드의 layout을 개발하다보면 초반에는 비교적 간단한 LinearLayout에 손이 많이 가지만 속성을 통해 더 자유로운 개발이 가능한 ConstraintLayout이 편해질 때가 온다.

이번 글은 ConstraintLayout의 속성 중 하나인 layout_constrainedWidth/Height에 대한 것이다.

우선 왜 필요할까?

특정 View의 최대 크기를 부모 Layout(ConstraintLayout)에 맞춰 지정해주고싶을 때를 생각해보자.

예를 들어 View가 텍스트 수에 따라 길이가 달라질 때, 텍스트 수가 화면 가로 길이를 벗어날 정도로 길다면

layout_constrainedWidth을 true로 설정하여 View가 부자연스럽게 잘리는 것을 방지해줄 수 있다.

2. 활용

  • app:layout_constrainedWidth=”false”


    default는 false로 지정되어있기 때문에 속성을 정의하지 않아도 false한 것과 같다.

    View의 최대 크기를 지정해주지 않으면 화면에서 View가 부자연스럽게 잘리는 것을 볼 수 있다.


  • app:layout_constrainedWidth=”true”


    View의 최대 크기를 부모 Layout(ConstraintLayout)에 맞춰 지정했기 때문에 텍스트 수가 길어지더라도 부모 Layout 너비에 맞춰 크기가 조절된다.

    텍스트 뒤에 말줄임표(…)는 android:ellipsize=”end” 속성을 정의했기 때문이다.

3. 마무리

width만 서술했지만 height도 동일한 원리로 사용하면 된다.

본문에 사용한 코드는 아래 링크에서 확인할 수 있다.

app:layout_constrainedWidth=”true”

ConstraintLayout 속성은 정말 다양한 것 같다. 제대로 익혀서 능수능란하게 사용하고싶다.

Leave a comment