본문 바로가기

Android/Knowhow

프로필 이미지를 동그랗게 출력하기

유저가 앨범에서 이미지를 선택하면 원형으로 다듬어서 출력해야 한다.




1차 구현

- 리소스를 로컬에서 관리함

- RoundedBitmapDrawable로 비트맵 리소스 원형 처리

ImageView 위젯에 bitmap 이미지를 출력하는 방법으로 1차 구현을 완료했다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
 if (resultCode == Activity.RESULT_OK) {
           if (data != null) {
               Uri selectedImageUri = data.getData();
               try {
                   Bitmap bitmap = MediaStore.Images
                .Media.getBitmap(
                    getActivity().getContentResolver()
                    , selectedImageUri
            );
                   setRoundedProfileImage(bitmap);
               } catch (IOException e) {
                   e.printStackTrace();
               }
}
cs


1
2
3
4
5
    private void setRoundedProfileImage(Bitmap bitmap) {
        RoundedBitmapDrawable result = RoundedBitmapDrawableFactory.create(getResources(), bitmap);
        result.setCircular(true);
        mProfileImageView.setImageDrawable(result);
    }
cs







2차 구현

- 리소스를 서버에서 관리함

- glide 라이브러리의 CropCircleTransformation으로 URL 리소스 원형 처리

라이브러리 추가할 때 꼭 2개 모두 해야한다.