需求:我在listview头布局里面设置为个人资源显示页面,其中包含头像,我想让头像宽度match_parent。高度按比例缩放(不至于把图片拉伸或压缩),此外不同的人的头像大小和宽高比例是不同的,由于得到的图片大小要比屏幕小,我在布局文件里和代码里试了很多方法,最终高度只能显示图片原始的高度,图片被拉扁了。一番折腾后,只能拿出最笨的方法。问题虽然解决了,感觉这肯定不是正经的方法。这里求大神给点化一下。
x.image().bind(ivIcon, ivUrl,new org.xutils.common.Callback.CommonCallback<Drawable>() {
@Override
public void onSuccess(Drawable result) {
int intrinsicHeight = result.getIntrinsicHeight();
int intrinsicWidth = result.getIntrinsicWidth();
int width = getResources().getDisplayMetrics().widthPixels;
int height = width * intrinsicHeight / intrinsicWidth;
ivIcon.getLayoutParams().width = width;
ivIcon.getLayoutParams().height = height;
ivIcon.setImageDrawable(result);
}
@Override
public void onError(Throwable ex, boolean isOnCallback) {
//你自己的处理代码
}
@Override
public void onCancelled(CancelledException cex) {
}
@Override
public void onFinished() {
}
});