마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

ImageView의 크기를 비율로 설정하고 싶습니다.

0 추천

안녕하세요 안드로이드 공부중인 학생입니다.

바로 본론으로 layout의 xml에서 이미지뷰를 만들면 보통

<ImageView
    android:id="@+id/add_image"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scaleType="fitCenter"
    app:srcCompat="@android:drawable/ic_menu_camera" />
 

이런식으로 설정할 수 있잖아요?

여기서 height을 width*1.5, width*2 이런식으로 1:1.5 , 1:2 비율로 만들고 싶습니다.
스마트폰 화면이 다르다 보니 가로는 match_parent 혹은 fill_parent 이렇게 하면 되는데 세로는 width*1.5를 어떻게 설정해야 할 지 모르겠습니다.
 
많은 도움 부탁드립니다.
감사합니다.
로아 (390 포인트) 님이 2018년 3월 29일 질문

1개의 답변

0 추천
 
채택된 답변

정확히 원하시는 바를 하시려면 Custom view나 외부 라이브러리 layout(PercentRelativeLayout, ConstraintLayout)을 사용해야합니다.

다만 약간의 꼼수로 기본 ImageView만으로 유사한 효과를 만들수는 있습니다.

src에 지정되는 image를 원하는 비율의 크기로 준비하고,

adjustViewBounds, centerCrop 효과를 주면 유사하게는 동작합니다.

    <ImageView
        android:layout_width="match_parent or 100dp"
        android:layout_height="wrap_content"
        android:scaleType="centerCrop"
        android:adjustViewBounds="true"
        android:src="@drawable/test_image"
        />

 

디자이너정 (42,810 포인트) 님이 2018년 3월 30일 답변
로아님이 2018년 4월 4일 채택됨
답변 감사합니다. ^^
현재 사진 혹은 갤러리에서 이미지 불러와서 크롭에서 막혀서 고생중입니다;
크롭만 해결된다면 디자이너정 님의 답변처럼 만들 수 있을 거 같아요^^
...