안드로이드

안드로이드 이미지 뷰에 동적으로 radius 적용하기 how to make rounded corner imageView

알통몬_ 2019. 3. 21. 11:38
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


이미지뷰에 동적으로 round를 주는 방법입니다.

정확히 말하면 이미지 뷰에 들어갈 이미지에 round를 주는 건데요.

코드는 간단합니다.

private void setRoundedCornerImage(AppCompatImageView imageView, int img) {
int RADIUS = 20;
Bitmap mbitmap = ((BitmapDrawable) context.getResources().getDrawable(img)).getBitmap();
Bitmap imageRounded = Bitmap.createBitmap(mbitmap.getWidth(), mbitmap.getHeight(), mbitmap.getConfig());
Canvas canvas = new Canvas(imageRounded);
Paint mpaint = new Paint();
mpaint.setAntiAlias(true);
mpaint.setShader(new BitmapShader(mbitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP));
// Round Image Corner 20,20,20,20
canvas.drawRoundRect((new RectF(0, 0, mbitmap.getWidth(), mbitmap.getHeight())), RADIUS, RADIUS, mpaint);
imageView.setImageBitmap(imageRounded);
}

저는 ImageView 대신 AppCompatImageView를 써서 인자로 AppCompatImageView

가 들어가 있는데 알아서 변경해서 사용하시면 됩니다.

RADIUS 값이 round 값입니다.

이상입니다.

반응형