기존 안드로이드 Imageview 내에 png 파일이나 비트맵 파일을 집어넣을 때 scaleType 옵션을 사용해
꽉 차게, 혹은 중앙에 위치하는 등의 오토 스케일링이 가능한데, 사용자가 좀 더 세밀하게, 그리고 다양한 옵션을 주고 싶을 때는
이 scaleType 옵션만으로는 성에 차지 않을 수 있다.
본인도 똑같은 이유로 자료를 좀 찾아보았는데, scaleType의 옵션 중 matrix라는 것이 있는데, 이를 사용하면
이미지 회전, 이미지 확대 축소와 이동까지 다양한 옵션을 달아 적용할 수 있는 것이었다.
사용법은 단순하다. 레이아웃의 ImageView의 scaleType의 옵션을 matrix (scaleType="matrix")로 두고
매트릭스 객체를 하나 생성한 뒤에 이를 ImageView에
이미지뷰.setImageMatrix(만든매트릭스객체);
로 정의하면 끝난다.
다이나믹하게도 설정 가능한지는 문서를 더 찾아봐야겠지만, 충분히 가능하지 않을까 짐작 중.
+ 이외에 추가로 레이아웃 파라미터를 사용하여 이미지를 정렬하는 stackOverflow 자료도 있어 추가로 명시함.
<참조>
- scaleType과 Matrix 관련
https://developer.android.com/reference/android/widget/ImageView.ScaleType
http://www.shop-wiz.com/document/android/sample5_use_matrix
- LayoutParams 관련
'ANDROID' 카테고리의 다른 글
[안드로이드] API 버전에 구애받지 않는 Notification 설정하기 (0) | 2019.09.18 |
---|---|
[안드로이드] 여러 페이지를 담은 PDF 파일 생성하기 (1) | 2018.12.13 |
[안드로이드] List나 Arraylist를 다룰 때의 사소한 주의점 (0) | 2018.11.27 |
[안드로이드] 뷰 객체의 좌표값 얻을 때의 간단한 팁 (0) | 2018.10.23 |
[안드로이드] 간단한 직렬화, 역직렬화 쓰기(Serialize, Deserialize) (0) | 2018.10.04 |