需求现场:
- 有些图片的宽高在布局的时候是不能够直接设定的,而是根据动态获取图片的同时,获取图片的宽高在设定
- 另外图片需要自适应
解决方案:类似以下代码
int bitmapHeight = bitmap.getHeight();
float unitHeight = getResources().getDimension(R.dimen.spu_good_info_height_unit);(注意用float,不用int)
expandview_appearance.getLayoutParams().height = (int)(unitHeight * bitmapHeight); (此刻在转成int)
expandview_appearance.getLayoutParams().width = (int)getResources().getDimension(R.dimen.spu_good_info_width);
expandview_appearance.setBackground(new BitmapDrawable(bitmap));
其中R.dimen.spu_good_info_height_unit是自适应的基本单位1px,在其他分辨率下可能就是0.9啦等。。
如此即可。