Kotlin

[Kotlin] scaleType ?

eulBlue 2023. 9. 7. 00:09

📱테스트 환경

Samsung Galaxy Android 13 • Android 10


😢 내가 겪은 문제

오랜만에 Next Web 개발하다가 오랜만에 다시 Kotlin App 개발을 할라니까 기억이 안난다 ㅎ

이래서 사람이 꾸준히 공부를 해줘야하나보다 싶었다. 배우는데는 참 오랜시간 걸리는데 잊는데는 금방인 것 같이 느껴진다.

아무튼 ImageView 관련 수정이 필요해서 수정을 해줬어야 했는데, 이미지 크기를 키우다 보니 내가 생각한것 처럼 안됐다.

뭐 늘 개발이 그런 식이였지만 .. 그래서 오늘 사용한 scaleType 에 대해 정리해놓으려고 한다.

<ImageView
    android:id="@+id/imageView"
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:src="@drawable/sample_image"
    android:scaleType="centerCrop"
    android:contentDescription="Sample Image"
/>

scaleType은 이미지뷰를 사용할 때 이미지가 어떻게 표시되는지를 제어하는 속성 중 하나이다.

  • center : 이미지를 원본 크기 그대로 중앙에 배치한다. 이미지가 뷰보다 클 경우 일부가 잘릴 수 있다.
  • centerCrop : 이미지를 중앙에 배치한다. 이미지의 비율을 유지한 채로 이미지를 크게 확대하여 뷰를 가득 채우도록 한다.
    이미지가 뷰보다 작을 경우 빈 공간이 발생할 수 있다.
  • centerInside : 이미지를 중앙에 배치하고, 이미지의 비율을 유지한 채로 이미지를 축소하여 뷰 내부에 전체 이미지가 들어가도록 한다.
    이미지가 뷰보다 클 경우 이미지가 축소된다.
  • fitCenter : 이미지를 중앙에 배치하고, 이미지의 비율을 유지한 채로 이미지를 뷰에 맞춘다. 이미지가 뷰보다 클 경우 일부가 잘릴 수 있다.
  • fitStart
  • fitEnd
  • fitXY
  • matrix

여기서 내 경험상 제일 많이 사용하는 건 centerCrop, fitCenter 인 것 같다.

설명을 작성하지 않은 건 사용해본적도 없다. 그래서 잘 모른다 ....!! 잘 쓰지는지도 모르겠고 ...

아무튼 제일 중요하게 생각하는 건 centerCropfitCenter 인데, 이정도는 어쩔 때 써야하는지 정도 알아두면 좋을 것 같다 !!

- 끝