기본 콘텐츠로 건너뛰기

Android, scale drawable Image with ImageView

//> set height after ImageView draw.
ViewTreeObserver vto = campaignImageView.getViewTreeObserver();
vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
public boolean onPreDraw() {
campaignImageView.getViewTreeObserver().removeOnPreDrawListener(this);
float height = drw.getIntrinsicHeight();
float width = drw.getIntrinsicWidth();
float ratio = height / width;
int imageViewHeight = (int) ( campaignImageView.getMeasuredWidth() * ratio);
LayoutParams lp = new LayoutParams(
LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT);
lp.height = imageViewHeight;
campaignImageView.setLayoutParams(lp);
return true;
}
});

댓글