[Android] ImageView

강승구·2022년 5월 12일

ImageView

ImageView를 사용하면 화면에 이미지 파일을 출력할 수 있다.

background와 src

background와 src 속성은 ImageView에 이미지를 출력하는 source를 정한다는 공통점이 있다.
하지만 background는 이미지의 사이즈를 고려하지 않고 ImageView의 사이즈에 맞게 조정하고 패딩 적용 불가하다는 특징이 있다.
src는 이미지의 원래크기대로 보이고 패딩을 적용 가능하다.


ScaleType

ImageView에서 제공하는 ScaleType의 값은 8가지로 나뉜다.

Center

이미지의 크기와 비율을 유지하며 이미지의 중앙을 ImageView의 중심에 맞춘다. 이때 ImageView보다 이미지가 클 경우 이미지가 잘릴 수 있다.
img

centerCrop

이미지의 비율을 유지하며 가로,세로 중 짧은 쪽을 ImageView에 꽉 차게 출력한다. 이때도 마찬가지로 ImageView를 벗어나는 부분은 출력되지 않는다.
img

centerInside

이미지의 가로, 세로 중 긴 쪽을 ImageView의 레이아웃에 맞춰 출력한다. 이미지의 비율은 유지되며 남는 공간은 background의 색으로 채워진다. fitCenter와 달리 이미지가 ImageView보다 작을 경우 크기가 유지된다.
img

fitCenter

centerInside와 유사하지만 이미지의 크기가 ImageView보다 작다면 ImageView의 크기에 따라 달라진다.
img

fitStart

ImageView 안에서 가로, 세로 비율을 유지하며 fit하게 출력된다. 단, fitCenter와 다르게 왼쪽 상단을 기준으로 정렬된다.
img

fitEnd

fitStart와 마찬가지로 가로, 세로 비율을 유지하며 fit하게 출력된다. 우측 하단을 기준으로 정렬된다.
img

fitXY

가로, 세로 비율에 상관 없이 ImageView에 꽉 차게 보여진다. 이미지가 찌그러진 상태로 보인다.
img

matrix

이미지의 크기, 비율을 유지하며 ImageView의 좌측상단을 기준으로 정렬한다.
이미지가 크다면 ImageView 외의 부분은 출력되지 않는다.
img

profile
강승구

0개의 댓글